Pertanyaan yang diberi tag shell-script

11
Tentukan variabel dengan nama variabel

Apa yang salah dengan skrip ini? Saya mencoba mendefinisikan A1 = 1, B1 = 1, C1 = 1 LIST="A B C" for x in $LIST do "$x"1=1 done dan hasilnya adalah: ./x.: line 7: A1=1: command not found ./x.: line 7: B1=1: command not found ./x.: line 7: C1=1: command not

11
Cara mendapatkan argumen terakhir ke fungsi / bin / sh

Apa cara yang lebih baik untuk diterapkan print_last_arg? #!/bin/sh print_last_arg () { eval "echo \${$#}" # this hurts } print_last_arg foo bar baz # baz (Jika ini, katakanlah, #!/usr/bin/zshalih-alih #!/bin/shsaya tahu apa yang harus dilakukan. Masalah saya adalah menemukan cara yang masuk...

11
$ HOME / bin dir tidak di $ PATH

Di saya, ~/.profilesaya memiliki blok terakhir yang harus memuat pribadi saya bin/ directoryseperti ini: # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi Tapi sepertinya tidak dimuat: echo

11
Apa arti %% dalam nama fungsi?

Melihat output env, saya perhatikan ada juga fungsi berikut. BASH_FUNC_mc%%=() { . /usr/share/mc/mc-wrapper.sh } Isi file /usr/share/mc/mc-wrapper.sh adalah sebagai berikut. MC_USER=`id | sed 's/[^(]*(//;s/).*//'` MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$" /usr/bin/mc -P "$MC_PWD_FILE"...

11
Shell Script: membuat variabel dengan opsi di dalamnya

Saya punya perintah rsync dengan parameter berikut: rsync -avz --{partial,stats,delete,exclude=".*"} Saya ingin meletakkan parameter di dalam variabel untuk menggunakannya kembali setelah dalam skrip. Sesuatu seperti ini: #!/bin/bash VAR=rsync -avz --{partial,stats,delete,exclude=".*"} $VAR...

11
Pengembalian implisit dalam fungsi bash?

Katakanlah saya memiliki fungsi bash seperti: gmx(){ echo "foo"; } Apakah fungsi ini secara implisit mengembalikan nilai keluar dari echoperintah, atau menggunakan kembali diperlukan? gmx(){ echo "foo"; return $? } Saya berasumsi bahwa cara bash bekerja, status keluar dari perintah akhir...

11
Kasus jatuh berdasarkan kondisi jika

Saya mencari cara agar fallthrough terjadi berdasarkan kondisi if dalam kondisi case di bash. Sebagai contoh: input="foo" VAR="1" case $input in foo) if [ $VAR = "1" ]; then # perform fallthrough else # do not perform fallthrough fi ;; *) echo "fallthrough worked!" ;; esac Dalam kode...

11
Perintah multiline: komentar satu baris

Saya suka menggunakan format berikut dalam skrip untuk perintah dengan banyak parameter (agar mudah dibaca): docker run \ --rm \ -u root \ -p 8080:8080 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$HOME":/home \ jenkinsci/blueocean Tapi,...