subshell

    3熱度

    2回答

    我正在寫一個bash腳本,我希望它崩潰的第一個錯誤。但是,我不能讓它這樣做在特定的情況下我下面簡單: #!/bin/bash set -Exu bad_command() { false #exit 1 echo "NO!!" } (set -o pipefail; bad_command | cat ; echo "${PIPESTATUS[@]}; $?"

    2熱度

    1回答

    #!/bin/bash -eu items="1 2" for item in $items; do ( echo one false echo two ) ||: done 我希望false一行破壞子shell,但繼續處理外層循環。即預期輸出是 one one 不過,我得到 one two one two 彷彿||:代表正是後false

    1熱度

    1回答

    由於顯而易見的原因,我不想export COLUMNS在我正常的bash shell中。 但是,爲了一個特定的子shell的目的,我需要訪問其父項的COLUMNS值。換句話說,在一個常規的bash shell中,我想調用一個使用ls -Cw $COLUMNS的shell腳本,其父項值爲$COLUMNS。 有沒有什麼辦法可以訪問父級的環境變量,而不是由父級的父級導出?

    1熱度

    2回答

    我試圖構建一個快速腳本來查找目錄下的所有git repos,並依次「git pull」每一個。 這是我迄今發現: find ~/ -name ".git" -type d | sed 's,/*[^/]\+/*$,,' | xargs -L1 bash -c 'cd "$1" && git pull' _ 如果粘貼到終端,這將工作完全因爲它的預期。但是,如果我讓這成爲一個別名我.bashrc文

    1熱度

    2回答

    我試圖運行使用別名的xargs的命令。搜索想出了這個 alias gojk 'stsq \!:1 | xargs -t -0 -I {} tcsh -c source ~/.tcshrc.user;myset {}' 但它返回 Bad ! arg selector 和變化都將返回 source: too few arguments.

    2熱度

    1回答

    我有以下bash腳本(這是更復雜腳本的簡化版本)。 #!/usr/bin/env bash set -x function execute() { `$1` # same as $($1), gives "command not found" as do all the following: # $1 # or ${1} # eval "$1" # e

    1熱度

    2回答

    上下文: 說我有: ( #outer subshell { #inner command group, pipe-connected to ensure simultaneous invocation do_first_thing #die, somehow } | { #inner command group, pipe-conne

    2熱度

    3回答

    我在做什麼錯了? unset list list=("A" "B" "C") /bin/sh -c "for i in `seq 1 ${#list[@]}` ; do echo $i ; done " 它應該返回:代替 1 2 3 : /bin/sh: -c: line 1: syntax error near unexpected token `2' /bin/sh: -c:

    0熱度

    2回答

    我在Amazon ec2中創建一個服務器,並將它作爲userdata傳遞給bash腳本,這是在服務器首次啓動時運行的。它包括一個命令,用於使用答案given here爲用戶添加一行到crontab。 directory="/home/intahwebz/current/tools/amazon/" command="cd $directory && sh backupSQLToS3.sh" j

    2熱度

    3回答

    可能重複: Spawn a background process in Ruby 花了幾天在這個戳。直到最近,我一直在使用操作系統中的ruby 1.8.7。我會用反引號來調用子shell。子shell是一個bash包裝器,它將調用在後臺運行任何程序,stdout和stderr都關閉。然後,它不再讓init接管該進程,並立即返回。這個工作很好,多年來,我會有這個循環過程在後臺啓動工作,並立即回報「是