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

Bashコマンドシェル用に記述されたスクリプトに関する質問。エラー/構文エラーのあるシェルスクリプトについては、ここに投稿する前に、shellcheckプログラム(またはhttps://shellcheck.netのWeb shellcheckサーバー)で確認してください。Bashのインタラクティブな使用に関する質問は、スタックオーバーフローよりもスーパーユーザーで話題になる可能性が高くなります。



8
「cat << EOF」はbashでどのように機能しますか?
プログラムに複数行入力を入力するスクリプトを作成する必要がありました(psql)。 少しグーグルで調べたところ、次の構文が機能することがわかりました。 cat &lt;&lt; EOF | psql ---params BEGIN; `pg_dump ----something` update table .... statement ...; END; EOF これにより、複数行の文字列(fromからBEGIN;をEND;含む)が正しく構築され、入力としてにパイプされますpsql。 しかし、私はそれがどのように/なぜ機能するのか分かりません、誰かが説明できますか? 私はを主に参照してるcat &lt;&lt; EOF私が知っている、&gt;ファイルへの出力&gt;&gt;ファイルに追加、&lt;ファイルからの入力を読み込みます。 &lt;&lt;正確には何をしますか? そして、そのためのマニュアルページはありますか?
631 linux  bash  scripting  heredoc 

24
Gitでプルが必要かどうかを確認する
リモートリポジトリが変更され、プルする必要があるかどうかを確認するにはどうすればよいですか? 今、私はこの簡単なスクリプトを使用します: git pull --dry-run | grep -q -v 'Already up-to-date.' &amp;&amp; changed=1 しかし、それはかなり重いです。 もっと良い方法はありますか?理想的な解決策は、すべてのリモートブランチをチェックし、変更されたブランチの名前と各ブランチの新しいコミットの数を返すことです。
623 git  bash  shell 

14
特定の部分的な名前を持つすべてのプロセスを強制終了する方法は?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか? Stack Overflowのトピックとなるように質問を更新します。 4ヶ月前に閉鎖。 取得したすべてのプロセスを強制終了したい: ps aux | grep my_pattern どうやってするの? これは動作しません: pkill my_pattern
623 linux  bash  posix 


19
ファイルからn行目を取得するBashツール
それを行う「標準的な」方法はありますか?私はhead -n | tail -1トリックを使用してきましたが、ファイルから行(または行の範囲)を明確に抽出するBashツールがあるかどうか疑問に思っていました。 「正規」とは、その主な機能がそれを行うプログラムを意味します。
605 bash  shell  unix  awk  sed 


14
sudo echo“ something” >> / etc / privilegedFileが機能しない
これは非常に単純な質問です。少なくともLinuxのsudo権限については、そうあるべきだと思われます。 私はちょうどに何か追加したい時に多くの時間があります/etc/hostsか、類似したファイルを両方のためにできることではない終わる&gt;と&gt;&gt;さえルートで、許可されていません。 root を使わずに、suまたはsudo surootに入れずにこの作業を行う方法はありますか?

6
複数行の出力をBash変数にキャプチャする
以下を出力するスクリプト 'myscript'があります。 abc def ghi 別のスクリプトでは、私は次のように呼びます。 declare RESULT=$(./myscript) $RESULT値を取得します abc def ghi 結果を改行または '\ n'文字で保存して ' echo -e'で出力できるようにする方法はありますか?
583 bash  variables 


8
シェルスクリプトで論理OR演算を行う方法
簡単な状態チェックを行おうとしていますが、うまくいきません。 場合は$#、ISに等しい0かそれ以上である1、その後挨拶。 私は成功せずに次の構文を試しました: if [ "$#" == 0 -o "$#" &gt; 1 ] ; then echo "hello" fi if [ "$#" == 0 ] || [ "$#" &gt; 1 ] ; then echo "hello" fi
571 bash  unix  if-statement  sh 

10
現在の作業ディレクトリをスクリプトのディレクトリに設定するにはどうすればよいですか?
私はbashスクリプトを書いています。現在の作業ディレクトリが常にスクリプトが置かれているディレクトリである必要があります。 デフォルトの動作では、スクリプトの現在の作業ディレクトリは、それを実行するシェルのディレクトリですが、この動作は必要ありません。
569 bash  path  scripting 


11
Bashスクリプトに数値を追加するにはどうすればよいですか?
このBashスクリプトがあり、16行目に問題がありました。15行目の以前の結果を取得して、16行目の変数に追加するにはどうすればよいですか? #!/bin/bash num=0 metab=0 for ((i=1; i&lt;=2; i++)); do for j in `ls output-$i-*`; do echo "$j" metab=$(cat $j|grep EndBuffer|awk '{sum+=$2} END { print sum/120}') (line15) num= $num + $metab (line16) done echo "$num" done

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