Your command is telling mintty
to start up and run your script, which is what it proceeds to do, then exit. That "popup" as you call it, is the terminal opening, running the command you passed it, and then exiting since it has done its job.
how to automate cygwin and mintty
-
03-04-2022 - |
Question
I currently have this under my shortcut
C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -
after that is run i have to type in
cd x:
ENTER
then i run a curl
script which does not change.
I tried to automate it by running the following command but it does not seem to work
my SH file
#!/bin/bash
cd x:
curl http://thedomain.com/update.json --connect-timeout 10000 --max-time 10000 --data-binary @jsonfilename -H 'Content-type:application/json;charset=utf-8;X-Vendor-Email=myemail@.com;'
this is what i run in CMD
mintty.exe --exec 'c:/cygwin/bin/test.sh'
cygwin popup for 2 seconds and disappear.
please help
update
New error
$ /bin/test.sh
0 [main] bash 12000 child_info_fork::abort: cygreadline7.dll: Loaded to different address: parent(0x3B0000) != child(0x320000)
/bin/test.sh: fork: retry: Resource temporarily unavailable
0 [main] bash 12052 child_info_fork::abort: cygreadline7.dll: Loaded to different address: parent(0x3B0000) != child(0x2B0000)
/bin/test.sh: fork: retry: Resource temporarily unavailable
0 [main] bash 9304 child_info_fork::abort: cygreadline7.dll: Loaded to different address: parent(0x3B0000) != child(0x3A0000)
/bin/test.sh: fork: retry: Resource temporarily unavailable
0 [main] bash 9036 child_info_fork::abort: cygreadline7.dll: Loaded to different address: parent(0x3B0000) != child(0x3A0000)
/bin/test.sh: fork: retry: Resource temporarily unavailable
0 [main] bash 9588 child_info_fork::abort: cygreadline7.dll: Loaded to different address: parent(0x3B0000) != child(0x3C0000)
/bin/test.sh: fork: Resource temporarily unavailable
Solution 2
OTHER TIPS
for whoever is interested in this .. here is the solution
create a shortcut in windows for Mintty with the following taret
Assuming your shell file is located in c:\cygwin\bin
C:\cygwin\bin\mintty.exe /bin/bash -l -e '/cygdrive/c/cygwin/bin/test.sh'
once you have the shortcut working, you can do a windows task scheduler and take it from there.
Windows 7 Pro: Create a basic task with Windows Task Scheduler to start DAILY and go through all the steps. Once you have created the task, go to Properties and then go to TRIGGERS tab and click EDIT
under ADVANCED SETTINGS frame, you'll se REPEAT TASK EVERY.... self-explanatory from there.
Does mintty.exe
evaluate arguments to --exec
with a filesystem root of c:\
or the cygwin environment /
? Try this.
mintty.exe --exec '/bin/test.sh'
or
mintty.exe --exec '/cygdrive/c/cygwin/bin/test.sh'
Also, if you haven't done so, you should chmod 755 /bin/test.sh
to make it executable.