subshell

    -1熱度

    1回答

    我想執行一個java程序形式我的紅寶石代碼。 我的代碼是這樣的: cmd = "java -cp \"path/lib/*\" com.blah.blah" # %x[#{cmd}] # `#{cmd}` # Kernel.system(cmd) Kernel.exec(cmd) 我的問題,就是命令不會在任何方式成功運行。我知道%x,反引號運行在一個子shell中,所以可能

    1熱度

    1回答

    所以,我認定我的bash腳本的行爲,我覺得很奇怪。 下面是測試腳本: echo "start of script" ( echo "start of subshell" cat > /tmp/$$ << EOF trap 'exit 99' SIGINT echo "sleep 10, hit ctrl+c now" sleep 10 EOF chmod +x /tmp/$

    37熱度

    3回答

    如何將多個命令的標準輸出集合到單個命令中? 實施例1:結合和排序所有三個回波命令的輸出: echo zzz; echo aaa; echo kkk 期望的輸出: aaa kkk zzz 實施例2:重寫以下,以使所有命令都是在一個單一的命令行使用管道,而不重定向到臨時文件: setopt > /tmp/foo; unsetopt >> /tmp/foo; set >> /tmp/foo;

    2熱度

    1回答

    我剛剛瞭解了bash中的別名。我創建了一個像這樣: alias="cd $directory" 其中$directory是從使用的輸入。在另一個shell腳本,我可以啓動一個子shell像這樣: (bash) 這使我的子shell,在那裏,如果我跑cd,我去了別名,cd $directory。這很好,它似乎按預期工作。 什麼我要找的是當子shell啓動的,該CD自動發生,所以我嘗試: (bash

    2熱度

    4回答

    問題: 下面的腳本代碼不會產生預期的結果: # MYSQL, MyUSER MyHost etc ... all defined above as normal TARG_DB="zztest"; DB_CREATE="$($MYSQL -u $MyUSER -h $MyHOST -p$MyPASS -Bse 'create database $TARG_DB')"; 預期成果: 創建一

    0熱度

    2回答

    我有這樣的腳本? command='scp xxx 192.168.1.23:/tmp' su - nobody -c "$command" 主殼沒有打印任何信息。 如何從子命令中獲取輸出?

    55熱度

    4回答

    我是用我的bash功能「退出1」語句來終止整個腳本,它工作得很好: function func() { echo "Goodbye" exit 1 } echo "Function call will abort" func echo "This will never be printed" 但後來我意識到,當所謂的喜歡它不這樣做的工作: res=$(func)

    4熱度

    1回答

    我想用python子進程模塊使用subhells和重定向的魔力,但它似乎不起作用,抱怨意外的令牌是括號。例如,當傳遞到子命令 cat <(head tmp) 給出了這樣的 >>> subprocess.Popen("cat <(head tmp)", shell=True) <subprocess.Popen object at 0x2b9bfef30350> >>> /bin/sh: -c:

    3熱度

    3回答

    我在apache2中運行一個帶有外部重寫程序(prg)的重寫映射,可能會產生錯誤並死亡。 當重寫映射不再運行時,系統顯然無法正常工作。 所以我想開始本身進行地圖程序(這是用PHP編寫的),並重新啓動它,如果它死了一個簡單的包裝外殼腳本: #!/bin/bash until /usr/bin/php /somepath/mymap.php; do echo "map died but i

    0熱度

    3回答

    看來子shell不檢索「$ @」的結果,所以沒有任何可替代的東西。 %_bust.css: %.css @echo $(echo [email protected] | sed s/_bust/$(BUSTER)/g)