command-substitution

    2熱度

    1回答

    我想建立一個小腳本(稱爲check_process.sh),檢查某個進程$PROC_NAME是否正在運行。如果是,則返回其PID,否則返回-1。 我的想法是在命令替換中使用pgrep -f <STRING>。 如果我直接在命令行中運行這段代碼: export ARG1=foo_name export RES=$(pgrep -f ${ARG1}) if [[ $RES == "" ]]; th

    0熱度

    1回答

    在bash中,可以使用"$(< file)"格式將文件作爲參數。 $(<的大概特殊外殼的文檔在哪裏?

    2熱度

    1回答

    不運行命令我有一個包含以下bash腳本: MY_COMMAND="MY_PWD=`pwd`; export MY_PWD; MY_PWD_BASENAME=`basename $MY_PWD`; echo $MY_PWD_BASENAME"; export MY_COMMAND 當我從終端源腳本,我得到以下錯誤: basename: missing operand Try `basename

    0熱度

    1回答

    我有一個與當我使用命令替換 > echo " test" test > echo $(echo " test") test 是被吃了前導空格返回字符串的命令爲什麼會出現這種情況,我能做些什麼呢?

    1熱度

    1回答

    我很新來砸, 我學習瞭如何使用變量是這樣的: var=$(cat << EOF this is echoed and this as well... EOF ) echo "$var" 如果上面的代碼使用variable你怎麼叫下面的方法叫什麼?這叫做使用definition? def="This should be echoed\nand this as well...\n"

    -1熱度

    1回答

    考慮以下情況: $ echo "abc" > file $ var=$(< file) $ echo "$var" abc 裏面的命令替換,我們使用重定向和一個文件,並且該文件的內容被正確地由可變捕獲。 然而,所有以下實施例中沒有產生輸出: $ < file $ < file | cat $ <file> file2 $ cat file2 在所有這些情況下,命令的內容不重定向

    -2熱度

    2回答

    我有文件夾在2個文件如下所示 $ ls -l total 1 -rw-r--r-- 1 user user-group 0 May 10 14:49 test -rw-r--r-- 1 user user-group 0 May 10 14:49 test1 清單中的文件正顯示出正常的。但爲什麼下面的命令顯示兩行合併在bash中的單行? $ echo `ls -l` total 1 -

    0熱度

    1回答

    我正在執行命令替換並將結果保存到變量中。但是,該命令的結果包含雙引號,導致變量爲空。 當運行test="$(java -version)"我得到以下結果: openjdk version "1.8.0_65" OpenJDK Runtime Environment (build 1.8.0_65-b17) OpenJDK 64-Bit Server VM (build 25.65-b01, m

    2熱度

    1回答

    我有一個包含文件列表的文件,並且我想對每個文件執行兩個命令。 內容files.txt的: file1 file2 file3 我想上的每個文件執行的命令是(例如)ls -s和du。 我所要的輸出最終被這樣的: <ls size> <du size> file1 <ls size> <du size> file2 <ls size> <du size> file3 我知道如何使用ba

    1熱度

    1回答

    我真的沒有找到解決這個問題的方法: 假設我有一個有多行的變量,每行最後應該是一個參數。 line 1 line two ... 我只在運行時獲取這個數據,但它應該是建立這樣一個命令: answer="$(dialog --menu 'Menu title' 0 0 0 'line 1' - 'line two' - ... 3>&1 1>&2 2>&3)" (數據必須由分離 - 但這不