タグ付けされた質問 「bash」

他のBourne / POSIXシェルとは対照的に、GNUのBourne Again SHellに固有の質問。Unixシェル全般に関する質問については、代わりに/ shellタグを使用してください。


2
変数を含む文字列を展開/評価せずにエコーします[終了]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 4年前休業。 私はどこでも検索しました。エコーして印刷してみました。一重引用符と二重引用符を試しました。しかし、私はデータを解析してそれを変数に割り当てたので、その中に変数があるかどうかを評価したいと思います。次に、変数をワイルドカードに置き換えて、ファイルを検索します。 例: var="file.$DATE.txt" ### Where it goes wrong- Needs to identify that $DATE is within the $var varaible. test=$(echo "$var"|grep '\$') if [[ $test ]] then ### I would use whatever fix is discovered here as well test=$(echo $test|sed 's/\$[a-zA-Z]*/\*/') fi ### (Actually pulling from remote machine …
12 bash  shell  quoting 


1
逆検索を使用するときにbash履歴の最後に戻りますか?
私はかなり長いbash履歴を保持しており、bashの逆検索機能(Ctrl+ r)で何かを検索すると、検索履歴の最初に到達し、必要なものがまだ見つからないため、最後に戻りたいと思います。履歴ファイルの。1つのオプションは、履歴の終わりに近づくか、または実行する前方検索機能(Ctrl+ s)を使用することです#が、bash履歴の終わりに直接移動するキーボードショートカットもありますか?

3
端末ではなくbash関数を終了します
私はzookeeperをインストールする以下のbashスクリプトを持っていますが、まだインストールされていない場合のみです。 ##zookeper installZook(){ ZOOK_VERSION="3.4.5" ZOOK_TOOL="zookeeper-${ZOOK_VERSION}" ZOOK_DOWNLOAD_URL="http://www.us.apache.org/dist/zookeeper/${ZOOK_TOOL}/${ZOOK_TOOL}.tar.gz" if [ -e $DEFAULT_INSTALLATION_DEST/${ZOOK_TOOL} ]; then echo "${ZOOK_TOOL} alreay installed"; exit 1; # <<<< here elif [ ! -e $DEFAULT_SOURCE_ROOT/${ZOOK_TOOL}.tar.gz ]; then wgetIt $ZOOK_DOWNLOAD_URL else echo "[info] : $DEFAULT_SOURCE_ROOT/$ZOOK_TOOL already exists" fi sudo mkdir -p /var/lib/zookeeper sudo mkdir -p /var/log/zookeeper tarIt "$DEFAULT_SOURCE_ROOT/$ZOOK_TOOL.tar.gz" sudo chmod …

6
セミランダム文字列から完全なURLを抽出/解析するにはどうすればよいですか?
ランダムな短い文字列から完全なURL(およびURLのみ)をbashで解析/抽出したいのですが。 例: bob, the address is http://www.google.com または https://foo.com/category/example.html is up または Error 123 occurred at http://bit.ly/~1223456677878 または Stats are up: https://foo1234.net/report.jpg 使ってみcat foo_output | egrep -o "https?://[\w'-\.]*\s"たがうまくいかなかった。


9
oh-my-zshをインストールした後:…/.zshrc:source:34:そのようなファイルまたはディレクトリはありません…/.oh-my-zsh/oh-my-zsh.sh
oh-my-zshをインストールしようとしました。実行しようとすると、次のエラーが表示されますrvm。 zsh: command not found: rvm 新しいタブを開こうとすると、次のエラーも表示されます。 /Users/jack/.zshrc:source:34: no such file or directory: /Users/jack/.oh-my-zsh/oh-my-zsh.sh /Users/jack/.zshrc:source:38: no such file or directory: .bashrc これが私の.zshrcファイルです: # Path to your oh-my-zsh configuration. ZSH=$HOME/.oh-my-zsh # Set name of the theme to load. # Look in ~/.oh-my-zsh/themes/ # Optionally, if you set this to "random", it'll …
12 bash  zsh  oh-my-zsh 

2
チルダを変数の一部として展開するにはどうすればよいですか?
bashプロンプトを開いて次のように入力すると、 $ set -o xtrace $ x='~/someDirectory' + x='~/someDirectory' $ echo $x + echo '~/someDirectory' ~/someDirectory 上記の5行目が表示されることを期待していました+ echo /home/myUsername/someDirectory。これを行う方法はありますか?私の元のBashスクリプトでは、変数xは実際には次のようなループを介して、入力ファイルのデータから入力されています。 while IFS= read line do params=($line) echo ${params[0]} done <"./someInputFile.txt" それでも、のecho '~/someDirectory'代わりに、同じような結果が得られecho /home/myUsername/someDirectoryます。

3
「$ _」の意味を理解する
Bashのマニュアルの次の文章$_、特に太字の部分について、例を挙げて説明していただけませんか。 シェルの起動時に、環境または引数リストで渡されたとおりに実行されているシェルまたはシェルスクリプトを呼び出すために使用される絶対パス名に設定します。 その後、展開後、前のコマンドの最後の引数に展開します。 また、完全なパス名に設定し、各コマンド実行起動するために使用し、そのコマンドにエクスポート環境に置かを。 mailをチェックする場合、このパラメーターはメールファイルの名前を保持します。
12 bash 

2
終了したバックグラウンドジョブステータスの「Exit 2」とは何ですか?
私はファイルにいくつかのデータ(いくつかのディレクトリからの* conf)を入れる演習を行っており、これをバックグラウンドで行う必要があります。私はそれをしました、そして私は出力メッセージの意味が何であるか疑問に思っています: [A@localhost tests]$ ls -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1 & Enterはこの行を上昇させます: [1] 2533 どういう意味ですか?他のEnterの後に、別のメッセージが表示されます [A@localhost tests]$ [1]+ Exit 2 ls --color=auto -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1 どういう意味ですか?「2番出口」とは? チェック結果を入力してください-問題はないようです。 [A@localhost tests]$ [A@localhost tests]$ ls -l test1_6_conf.txt -rw-rw-r--. 1 A A 2641 Nov 22 14:19 test1_6_conf.txt [A@localhost tests]$ CentOS …



2
sshを介してコマンドを実行すると、ドットファイルが取得されない
プログラムを対話形式で実行すると、問題なく動作します。 ssh somehost $ ~/some/path/somescript.py sshでプログラムを直接実行すると、機能しません。ソースされていないPYTHONPATHため、変数は設定されて.bashrcいません。 ssh somehost ~/some/path/somescript.py を実行するとssh somehost 'source ~/.bashrc; ~/some/path/somescript.py'、正常に動作します。 しかし、後者はtcshを使用していて、まったく持っていないなど、他の一部の人には機能しません~/.bashrc。 何がすべてのシェルのために働く別のホスト上でssh経由の事を実行するコマンドは?

1
Bashは2つのシェルプロンプトを書き込もうとしますか?
教育目的で、ターミナルに接続された実行中のbashプロセスのstrace出力を調べています。 私のbashプロセスにはPID 2883があります。 私はタイプする [OP@localhost ~]$ strace -e trace=openat,read,write,fork,vfork,clone,execve -p 2883 2> bash.strace ターミナルへ。次に、bashプロセスに進み、次の対話を行います。 [OP@localhost ~]$ ls 出力を見ると、 strace: Process 2883 attached read(0, "l", 1) = 1 write(2, "l", 1) = 1 read(0, "s", 1) = 1 write(2, "s", 1) = 1 read(0, "\r", 1) = 1 write(2, "\n", 1) …
11 bash  tty  strace 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.