Pockets Pockets. As creating a. In that way, you may use MSYS_NO_PATHCONV environment variable as in the Git for Windows but in the original MinGW/MSYS. 0. py Thanks! – dzhukov. The SERVICE_PRINCIPAL_NAME value must be. Amos Yuen Amos Yuen. Reload to refresh your session. You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or locally (for just the current session). docker run -it -v /$ (pwd):/$ (pwd) -w /$ (pwd) node:slim npm test. I'd like to know if this is just a known issue/limitation with a known workaround or if it's just not supported? Some more background about what I've configured/tried: Just starting gpg-agent with gpg-connect-agent/bye doesn't work for me, itTo solve this issue, just set environment variable MSYS_NO_PATHCONV=1 or set it temporarily when you running the command. You might try setting the MSYS_NO_PATHCONV environment variable to 1 before you start: git-for-windows/git#577 (comment)# don't rewrite paths for Windows Git Bash users export MSYS_NO_PATHCONV=1 docker-compose -f docker-compose. sh: if [ "$ (uname)" == "MINGW64_NT-10. Provide additional environment details (AWS, VirtualBox, physical, etc. To make the changes in the chaincode made reflect, following steps were taken: 1. az feedback auto-generates most of the information requested below, as of CLI version 2. So instead I recommend setting MSYS_NO_PATHCONV=1 either selectively per command or scope it to the use case. Connect and share knowledge within a single location that is structured and easy to search. cmd startup script: rem To export full current PATH from environment into MSYS2 use '-use-full-path' parameter. Sign in to comment 3 answers. While running commands in a terminal, run the export command once during that terminal session. Use unset MSYS_NO_PATHCONV in the script to restore standard Git Bash behavior. cd fabcard . Haikel JABRI 1. gnupg folder I then do find those files: gnupg_spawn_agent_sentinel. 4. com orderer. Adam . Docker starts, sets the environment, and docker run xxx works as expected. pem. When running npm run build Git Bash was changing my file path from the projects file path (C:devsitesmy-sitecore-site) to where git was installed (C:Program FilesGit). Download “64-bit Git for Windows Setup. exe "$@" } export -f docker COMMENT Restarted w/ quickstart terminal and the issue is gone. /startFabric. But since master is the root of $/Project and if you look at the history of $/Project in TFS you'll see a straight linear history of every changeset ever, no matter what branch/folder/etc. If you specify command-line options starting with a slash, POSIX-to-Windows path conversion will kick in converting e. The entry script exits once os. Improve this answer. exec¶ The exec function allows you to run a command, returning the stdout of the command. example. Use --fetch-includes to invoke an external fetching routine. I'm not sure why, as specified in the README, adding MSYS_NO_PATHCONV=1 to the Git Bash environment is necessary, as it works fine. email | awk '{print tolower($0)}' ` /notebooks Then run: $ . Add a comment |#!/bin/bash # # Exit on first error, print all commands. This variable should stop that from happening. 31. If you require the argument to have a starting "/" then the workaround fails, MSYS2 has an option for this, but it's another tool :. Also, I'm using Linux containers on Windows if that matters. I had to run this command in git bash set MSYS_NO_PATHCONV=1 git blame -L/pathconv/ msys2_path_conv. I suggest editing the question title and adding environment info like OS, shell and docker versions. 1). Operating system Windows 10 Helmfile Version 0. So in this msys2 I cannot run git, cmake, etc (and no I don't want to write an alias for all my binaries :p). This is no longer necessary, because Bazel is a native Windows binary since version 0. You can globally disable MSYS' automatic path replacement (e. Share. it's on, we can use this to our advantage. 1 comment Show comments for this answer Report a concern. Since the python file is saving the images to the output folder where as output;C is mounted to the. with MSYS_NO_PATHCONV=1. 10. org1. I tried prepending and it worked, as does putting export MSYS_NO_PATHCONV=1 in your script. Having said that, I'm starting to think that OP's problem is a git-for-windows bug and should be reported as such (might have something to do with the fact that git-add is a binary, but git-add--interactive is a perl script). 解決策. 2. MSYS_NO_PATHCONV=1 cmd /c clean. This example demonstrated how to use the Azure client libraries in Python application code to upload a file to that Blob storage container. example. org1. MSYS_NO_PATHCONV=0; } Toolkit Overview The Toolkit is designed to process one sample at a time, where each sample is represented by some number of paired FASTQ files . Includes from external sources are only fetched once. Use escaped /projects/ parameter by adding extra / ( //projects/) Remove Windows at all (the best one) Share. 21. Copy the contents to your Git/mingw64/ directory, merging the folders, but do NOT. bash_profile or use an alias, something like git config --global alias. $ MSYS_NO_PATHCONV=1 docker run -v $(pwd)/config:/config -it --entrypoint=promtool prom/prometheus:v2. exe ". $ MSYS_NO_PATHCONV=1 docker run --rm busybox ls /foo ls: /foo: No such file or directory; or exporting the MSYS_NO_PATHCONV=1 variable as an environment variable to disable the behavior completelyActually, git-windows folks warn against even temporary enabling MSYS_NO_PATHCONV. This article is focused on understanding how Hyperledger Fabric Chaincode development is done and how to easily deploy it whenever you update the chaincode. In some cases, MSYS also transforms colons to semicolon. exe". In your case try docker run -w //tmp hello-world . Improve this answer. I think Git bash and just "bash" in VSC are the same, but I tried in both, just in case - both fail. basically Windows paths with a drive letter, but forward slashes instead of backslashes, e. Execute the following command under Git bash (MSYS): docker run ubuntu /bin/echo lol. " echo -e " -o The certificate organization. It's msys doing this unwanted work. 0 Git yet. docker-compose -f docker-compose. profile に export MSYS_NO_PATHCONV=1 を設定し. MSYS_NO_PATHCONV=1 cmd /c build. Ciao, JohannesYou signed in with another tab or window. From the Azure portal, you can verify if it's registered by going to Microsoft Entra ID > Enterprise applications and change the search filter to. sh # don't rewrite paths for Windows Git Bash users export MSYS_NO_PATHCONV=1 docker-compose -f docker-compose. org1. This is a Windows 7 Ultimate x64 (fully patched) system with Git for Windows x64 installed so made sure it. Congrats! It works. 1. After this if you want to modify the chaincode and re-deploy you can use the cli container that is. "//usr/bin/bash. 0. It only expects the environment variable here. sh run --half --prompt ' abstract art ' Outputs Model. dll are not compatible with Mandatory ASLR and may crash if system-wide Mandatory ASLR is enabled in Windows Exploit protection. I don't remeber exactly where it is in the InitBranch. example. done Stopping orderer. /clean. You must issue export MSYS_NO_PATHCONV=1 in Git Bash before running any command. sh # don't rewrite paths for Windows Git Bash users export MSYS_NO_PATHCONV=1 docker-compose -f docker-compose. If the environment variable value starts with ‘/’ (forward slash) and Git for Windows is used, you must set MSYS_NO_PATHCONV=1 to preserve values as-is, or the environment. 5. docker-compose -f docker-compose. js file in the chain. The "correct" way in MSYS is: $ MSYS_NO_PATHCONV=1 taskkill /F /T /IM ssh-agent. Sign up for free to join this conversation on GitHub . MSYS_NO_PATHCONV=1 aws logs get-log-events. This even works for individual command lines: MSYS_NO_PATHCONV=1 cmd /c dir /x will list the files in the current directory along with their 8. Projects None yet Milestone $ MSYS_NO_PATHCONV=1 docker run --rm -ti -v $(pwd):/work con1 ls /work. Images. To stop the conversion, you can either use ' // ' to stop the conversion or set the environment variable ' MSYS_NO_PATHCONV ' to '1'. A better way to convert paths is to do it explicitly, with cygpath -m /c/cygwin/unixy/path converts to C:/cygwin/unixy/path. . For me this issue was caused by the volume handoff from WSL (Windows Subsystem for Linux - available on Windows 10) to Docker. Name with $_ to use full. Follow edited May 20, 2020 at 8:32. Btw if somebody (like me) wonders why their tasty awk patterns '/like this/' don't work with git-annex test -p in Windows Git Bash, one has to remember that Git Bash is based on Cygwin/Msys and there's a Unix -> Windows path conversion at work. If you specify command-line options starting with a slash, POSIX-to-Windows path conversion will kick in converting e. Command Description; az login: login to azure with your account: az account list --output table: display available subscription: az account set --subscription xxxxxxxx-xxxx-xxxx-xComposer has no dependency on the architecture of a fabric network. MSYS_NO_PATHCONV=1 git blame -L/pathconv/ msys2_path_conv. 1 Toolkit: Docker Swarm) Share. exec internally uses CreateProcess which doesn't wait for the sub-process. Sam Cogan 8,302 Reputation points • MVP 2020-08-26T19:40:35. The syntax is just different. org1. 14 for issues seen with TF 1. Note that MSYS_NO_PATHCONV seems to be really specific to Git for Windows and is not available in other MSYS2-based terminals. As a base for the workaround, create a small docker script (no extension) somewhere in your PATH, and make sure this script is higher-priority than the path of docker. asked Sep 24, 2018 at 11:25. py # start flask app in development. ) export MSYS_NO_PATHCONV=1 Key points: You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or. com. On Windows, if you aren't using WSL2 and instead use MSYS, MinGW, or Git Bash, prefix your commands with MSYS_NO_PATHCONV=1 (or export it beforehand): . exe ". You switched accounts on another tab or window. (eg. Teams. I'm running Windows 7, and I have the latest version of git (2. /Users/ ` git config user. g. 1 Toolkit: Docker Swarm) az feedback auto-generates most of the information requested below, as of CLI version 2. ps1 Pulling in upstream changes. MSYS_NO_PATHCONV=1 npm run set-log-retention 改善されなかった。 パイプでコマンドを実行すると、一時的に付与した MSYS_NO_PATHCONV の環境変数が引き継がれない模様。 Solution. I have bash installed both via MSYS2 and via git. In this article. In my ~/. example. Therefore the previous setProperty command would become: msys_no_pathconv=1 が良いらしいとか、良薬的効果を期待して試しましたが、効果は出ず… そもそもググってもドキュメントもソースコードも出てこないので、現状追求のしようがありません… Either that or updating the Writing Your First Application doc to specify that export needs to take place. g. /startFabric. Sorry about that. p. Since this is a folder, it's pointless to create a git-tfs TFS remote for it--you can't "fetch" a folder. 7k 14 14 gold badges 60 60 silver badges 80 80 bronze badges. ):# Workaround for Docker for Windows in Git Bash. You can set enviroment variable MSYS_NO_PATHCONV=1 or set it temporarily when a running command:" MSYS_NO_PATHCONV=1 az vm show --ids. docker; docker-for-windows; docker-desktop; Share. No quotes do not help. 5. Alexander Farber Alexander Farber. Then, add a step to the job with the following settings: Set the step Type to Execute Command. . ) export MSYS_NO_PATHCONV=1 Key points: You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or. ThatsWhatSheCoded ThatsWhatSheCoded. Hopefully they may eventually change this in docker-for-windows. MSYS_NO_PATHCONV also works in this case. If you're creating a service principal from Git Bash, set the MSYS_NO_PATHCONV environment variable. I wrote a script (see below) based on startFabric. 0 (TFS client library 12. 7. org (with msys-core-extended): MSYS_NO_PATHCONV=1. Update (Aug-2016): This question is no longer relevant, as msys2 now comes with cygpath in its installation. Using Hyper-V backend. com. UTF-8" export LC_ALL="zh_CN. bashrc . Unlike first-network, it does not actually regenerate the genesis block or channel config. g. Jekyll Docker is a software image that has Jekyll and many of its dependencies ready to use for you in an encapsulated format. export MSYS_NO_PATHCONV=1 重启bash后,执行adb push命令,确实可以了,但是又出现了另外一个问题,npm命令找不到了,会出现. Adding MSYS_NO_PATHCONV=1 to the front of the aws command line worked. I created two small shell scripts, docker and docker-compose , and put them in a location that has higher-priority than Docker's default path. I do this for example in my Makefiles by only exporting it for the scope of make (and all scripts make invokes) by putting the following code in the beginning of the Makefile:If the environment variable value starts with ‘/’ (forward slash) and Git for Windows is used, you must set MSYS_NO_PATHCONV=1 to preserve values as-is, or the environment variable value will be prefixed with the C:Program FilesGit. I tried prepending and it worked, as does putting export MSYS_NO_PATHCONV=1 in your script. inside a bash script, the user can now set the the environment variable `MSYS_NO_PATHCONV` when calling native windows commands. exe". Share. If you specify command-line options starting with a slash, POSIX-to-Windows path conversion will kick in converting e. sh docker build I rebuilt my development workstation and have been unsuccessful in redeploying AzerothCore via Docker. もしどうしても使いたい場合、以下でパス変換を回避する. ) export MSYS_NO_PATHCONV=1 Key points: You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or locally (for just the current session). When I compile on debug mode, bazel will add the linking option of /DEBUG:FULL, it will generate too big pdb file. FollowAlternatively, provide path toward the- . Here is an example from my computer: MSYS側で良しなに Windows パスを扱えるようにしてくれますが、CLI の引数では / はそのまま通してほしいです。 そんなときに MSYS_NO_PATHCONV=1 を指定… 業務環境では WSL2 が使えないので Git Bash で AWS CLI 操作をしていましたが、スラッシュが扱えなかったためメモ。 3 Answers Sorted by: 17 But is there any global switches or env variables to prevent MinGW for this conversion ? Yes. yml up -d peer1. Sorted by: 5. 4. g. //bin/bash) Reply to this email directly or view it on GitHub. Given the above answers, you can use this one command: aws cloudfront create-invalidation --distribution-id $ (aws cloudfront list-distributions --query 'DistributionList. Should be here:まとめ. sh. example. So it wasn't an Az CLI issue at all, but a Git Bash issue. MSYS_NO_PATHCONV=1 az. This will create a layer. sig/cli Categorizes an issue or PR as relevant to SIG CLI. de>(The MSYS_NO_PATHCONV environment variable is for users of Git-Bash and instructs Git-Bash to skip converting paths from Unix-like to Windows-like. yml up -d ca. 5. Items [*]. peer chaincode instantiateMSYS_NO_PATHCONV=1 before executing the docker commands. done Removing orderer. which is replacing the first forward slash by doubling it and replacing all the remaining forward slashes by two backslashes. Follow edited Jul 21, 2017 at 13:40. (This step isn't necessary if you're using Cloud Shell. Open . Hey folks – we ended up getting this working by using multi-platform builds AND the MSYS_NO_PATHCONV=1 env var. exe. gz # git bash for windows users having absolute path issue could use the following command unalias node MSYS_NO_PATHCONV=1 node mt restore /backup/myDatabase__2020-11. I am following the instructions for [Running Hello World via Command Prompt (Windows) ] I installed MSYS2 (using default locations) and followed instructions 1-7 from as instructed. To show details for each BMS, you can use the following commands, swapping out the bare metal variable:This is from the top of my head what I would try, but no garantuees that it actually works: Remove the TFS branch config (or uncomment) from your . export MSYS_NO_PATHCONV=1. sh docker build 2) Run the containers. Disable the path conversion heuristic in MSYS. bashrc. # Workaround for Docker for Windows in Git Bash. A fix was just submitted to fabric to do that for you so if you pull the latest version from the master branch it should work. Use msys; use the msys perl; use the mingw toolchain, and remove all of the above environment variables that override what toolchain to use. example. cc. エスケープする. Note the MSYS_NO_PATHCONV=1 in front of the docker command and $(pwd) - round brackets, lower-case pwd, no quotes, no backslashes. Run container with local directory mounted: -v /$ (pwd):/target. 1 Hmm how is that related to my question? If you suspect that it is malformed, I'm sure it isn't, since I can run the same executables using the regular Windows shell (cmd). cc Alternatively, you can double the first slash to avoid POSIX-to-Windows path conversion, e. Gitbash is adding the C:/Program Files/Git prefix when the command argument is a posix path, for my case the workaround is to use double slash //dev/de, but I am wondering if that is a misconfiguration or if it could be. 3k 25 25. It works: $ MSYS_NO_PATHCONV=1 docker run --volume $(pwd):/home/${USER} python:3. ) export MSYS_NO_PATHCONV=1 Key points: You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or locally (for just the current session). Set the step Name to deploy to Azure. This basically takes the first CloudFront Distribution in your environment, retrieves the ID, removes the double quotes, and. The file exists. /clean. So it wasn't an Az CLI issue at all, but a Git Bash issue. 在最末尾添加msys_no_pathconv的配置 但是当你使用 npm 的时候会发现 npm 不能用了,所以对于前端开发这么改不太合适 alias ll='ls -lh --color' export LANG="zh_CN. Learn more about Teamsset -ev # don't rewrite paths for Windows Git Bash users export MSYS_NO_PATHCONV=1 docker-compose -f docker-compose2. sleep 120sMSYS2 comes with different environments and the first thing you have to decide is which one to use. 在gitbash中执行adb push命令时,会出现路径找不到的问题,当时的解决方案是在gitbash的配置文件bash. Navigate to target directory and list files. I just created an image locally, "philcruz/mongo-base". It looks like MSYS is doing path conversion inside the docker container to be relative to the Git Bash install directory rather than the container filesystem root. Improve this answer. . It matches the prefix against the following string KEY=VALUE. I'll summarize my research here. 7,130 2 2 gold badges 37 37 silver badges 49 49 bronze badges. Disable the path conversion heuristic in MSYS: export MSYS_NO_PATHCONV=1 export MSYS2_ARG_CONV_EXCL="*"Hello, The Azure cli tag (az tag) command does not work for me in Visual Studio Code's (VSC) bash shell. – ejb. There are some unit tests. It is the successor/rework of my previous project lightf, but this time without trying weird things out and building a complete product instead. 181 1 1 silver badge 3 3 bronze badges. answered May 8, 2019 at 6:12. cc. cc Alternatively, you can double the first slash to avoid POSIX-to-Windows path conversion, e. bashrc, Docker behaves the same everywhere. The MSYS_NO_PATHCONV=1 is needed only for Git Bash. All reactionsk8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. Everything goes well, until "chaincode instantiation". If writing a script, run the command once at the top of the script. – Douglass Parker. Improve this answer. Background On Windows, when using . ) export MSYS_NO_PATHCONV=1 Key points: You can set the MSYS_NO_PATHCONV environment variable globally (for all terminal sessions) or locally (for just the current session). The code uses the DefaultAzureCredential class of the Azure. MSYS_NO_PATHCONV=1 docker run -it -v $ (pwd):$ (pwd) -w $ (pwd) node:slim npm. Changes since Git-2. Otherwise, just set that variable and that should solve your problem. dfarmadmin. But since master is the root of $/Project and if you look at the history of $/Project in TFS you'll see a straight linear history of every changeset ever, no matter what branch/folder/etc. Exit Code is 0 even when the command failsStep 6: Provision a Jump Machine / Bastion Host. Please sign in to rate this answer. Follow answered Oct 6, 2017 at 7:21. sh script creates and mounts this folder as a volume in the container. 0. For anyone still having this problem with Docker-for-Windows, here are the 2 solutions that work: Prefix your command. To disable the path conversion. This will disable the path translation for that command. According to _exec, _wexec Functions, os. com couchdb cli WARNING: The Docker Engine you're using is running in swarm mode. docker-compose -f docker-compose. 7k 21 21 gold badges 105 105 silver badges 131 131 bronze badges. Execute the following command under Git bash (MSYS): docker run ubuntu /bin/echo lol. – ulu May 21, 2012 at 16:23 @ulu: it is related to your question because the PATH variable is what determines which executables can be found. If you would like to know more. docker() { (export. In the output, look for the roleDefinitionId field. Exit Powershell, then in Git Bash, run echo "export MSYS_NO_PATHCONV=1" >> ~/. Exit Code is 0 even when the command failsDisable the POSIX path conversion in Git Bash (MinGW) using MSYS_NO_PATHCONV environment variable. Having said that, I'm starting to think that OP's problem is a git-for-windows bug and should be reported as such (might have something to do with the fact that git-add is a binary, but git-add--interactive is a perl script). MSYS_NO_PATHCONV also works in this case. My project has a directory (within which are many subdirectories) whose name is simply an underscore. Sort by: Most helpful Most helpful Newest Oldest. sh. No one assigned Labels kind/question status/0-triage. docker rm -f $ (docker ps -aq) Find the following image when you run docker images One of the output will be this among the other hyperledger binary images. . Start TerminusDB with a docker volume. export MSYS_NO_PATHCONV=1 See here and the references inside. Run container with local directory mounted: -v /$ (pwd):/target. Alternatively, you can double the first slash to avoid POSIX-to-Windows path conversion, e. Using z/OSMF with Z Open Editor and Zowe Explorer. This should fail for you as well. export MSYS_NO_PATHCONV=1. The exact same commands as shown below…export MSYS_NO_PATHCONV=1 # issue with the Git Bash for Windows environment path being added 0 votes Report a concern. MSYS_NO_PATHCONV=1 . The following workaround was tested with Git Bash 4. MSYS2_ENV_CONV_EXCL can either be * to mean exclude everything, or a list of one or more environment variable prefixes separated by ;, like. I think Git bash and just "bash" in VSC are the same, but I tried in both, just in case - both fail. yml up -d zookeeper0. MSYS_NO_PATHCONV=1 git blame -L/pathconv/ msys2_path_conv. export MSYS_NO_PATHCONV=1 Share. $ MSYS_NO_PATHCONV=1 docker run --rm busybox ls /foo ls: /foo: No such file or directory; or exporting the MSYS_NO_PATHCONV=1 variable as an environment variable to disable the behavior completely Actually, git-windows folks warn against even temporary enabling MSYS_NO_PATHCONV. 1 Hmm how is that related to my question? If you suspect that it is malformed, I'm sure it isn't, since I can run the same executables using the regular Windows shell (cmd). A fix was just submitted to fabric to do that for you so if you pull the latest version from the master branch it should work. zip file to Lambda! Sign into your AWS Console and head over to Services > Lambda > Layers (it should be under "Additional resources"). example. A Bazel label //foo/bar:bin is considered a Unix absolute path, only because it starts with a slash) $MSYS_NO_PATHCONV=1 yarn add @types/rx. 9. Share. Edit: As a side note, the stdlib path_add functions do not work due to similar Windows vs. The problem is that mingw trying to be smart, and converting paths. 1. 08+00:00. g. g. exe". com. If you find yourself needing it occasionally, just drop a MSYS_NO_PATHCONV=0 infront of the command you need - or, even run export MSYS_NO_PATHCONV=0 to enable it for that session. exec¶ The exec function allows you to run a command, returning the stdout of the command. . But it’s never as easy as just adding winpty at the front. Using MSYS2 MinGW 64-bit terminal on VSCode. You signed out in another tab or window. ) use cmd. example. 3-without-guile-w32-bin. 2. bat Windows Git Bash: powershell . yml down. Prepend MSYS_NO_PATHCONV=1 to every docker call. By adding the same snippet in . This will lead to issues with Git Bash $ aws ssm get-parameter --name "/test/parameter/new"export MSYS_NO_PATHCONV=1. The unfortunate answer is in Windows, there are many ways arguments can be parsed, and you have to format your output in bash in such a way that is will be reparsed by the windows program it the way it expects. 2. Without it, the subj argument /C=NL is mistaken for a path and it gets prefixed with C:\Program Files\Git (see also Windows and Docker paths). turning / into C:msys64) by setting. example. Your command will look like this: MSYS_NO_PATHCONV=1 python src/loon/skeleton. In full: MSYS_NO_PATHCONV=1 docker run -v /c/path:/path The MSYS_NO_PATHCONV and MSYS2_ARG_CONV_EXCL are supposed to prevent path munging on both MSYS2 and Git-Bash, and they work fine, except when using winpty. yml down docker-compose -f docker-compose. com kafka1. Adam . conf”. The problem is that mingw trying to be smart, and converting paths. $ MSYS_NO_PATHCONV=1 # set variable without export (my-second-branch) $ git. com peer0. While running commands in a terminal, run the export command once during that terminal session. bp_network2$ . See this link for further information. MSYS thinks the argument //src:. Strawberry or Activate State); use the Visual Studio toolchain. dsebastien (Dsebastien) April 15, 2016, 7:40am 2. . echo -e " -s The certificate state. No difference, unfortunately. Improve this. Improve this answer. Git Bash tries to convert the path for other Windows commands. Thanks for the follow ups though and appreciate the help!The C: part looks strange to me. The script is formatted for the Bash shell.