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

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

6
進行状況バーを表示しないようにcURLを取得するにはどうすればよいですか?
スクリプトでcURLを使用して、プログレスバーが表示されないようにしています。 私が試した-s、-silent、-S、および-quietオプションは、それらのどれも動作しません。 これが私が試した典型的なコマンドです: curl -s http://google.com > temp.html 進行状況バーを取得するのは、ファイルにプッシュするときだけなので、進行状況バーcurl -s http://google.comはありませんが、curl -s http://google.com > temp.htmlあります。
563 linux  bash  unix  scripting  curl 

5
ディレクトリ内のファイルをループしてパスを変更し、ファイル名にサフィックスを追加する方法
さまざまな引数でプログラムを開始するスクリプトを記述する必要がありますが、Bashは初めてです。私はプログラムを次のように開始します: ./MyProgram.exe Data/data1.txt [Logs/data1_Log.txt]。 これが私がやりたいことの疑似コードです: for each filename in /Data do for int i = 0, i = 3, i++ ./MyProgram.exe Data/filename.txt Logs/filename_Log{i}.txt end for end for 最初の引数から2番目の引数を作成する方法に本当に困惑しているので、dataABCD_Log1.txtのように見え、プログラムを開始します。
562 bash  for-loop  filenames  glob 

30
いくつかのサブプロセスが終了するまでbashで待機し、サブプロセスがコード!= 0で終了するときに終了コード!= 0を返す方法は?
スクリプトから生成されたいくつかのサブプロセスが終了して終了コード!= 0を返すまでbashスクリプトで待機する方法は、サブプロセスのいずれかがコード!= 0で終了する場合です。 簡単なスクリプト: #!/bin/bash for i in `seq 0 9`; do doCalculations $i & done wait 上記のスクリプトは、生成された10個すべてのサブプロセスを待機しますが、常に終了ステータス0を返します(を参照help wait)。このスクリプトを変更して、生成されたサブプロセスの終了ステータスを検出し、サブプロセスのいずれかがコード!= 0で終了したときに終了コード1を返すようにするにはどうすればよいですか? サブプロセスのPIDを収集し、それらを順番に待って終了ステータスを合計するよりも良い解決策はありますか?
562 bash  process  wait 

14
Bashコマンドからテキストファイル内を検索して置換する
検索を行うと、指定された入力文字列を置き換える、と言うための最も簡単な方法は何だabcと言うと、別の文字列に置き換えXYZたファイルには/tmp/file.txt? 私はアプリを作成していて、IronPythonを使用してSSH経由でコマンドを実行しています。ただし、Unixについてはよく知らないので、何を探すべきかわかりません。 Bashは、コマンドラインインターフェイスであるだけでなく、非常に強力なスクリプト言語になる可能性があると聞きました。したがって、これが本当であれば、このようなアクションを実行できると思います。 bashでそれを行うことはできますか、そして私の目標を達成するための最も簡単な(1行の)スクリプトは何ですか?



8
Bashでの数値の比較
私はbashターミナル用のスクリプトの作成について学び始めていますが、比較を適切に機能させる方法を見つけることができません。私が使用しているスクリプトは次のとおりです。 echo "enter two numbers"; read a b; echo "a=$a"; echo "b=$b"; if [ $a \> $b ]; then echo "a is greater than b"; else echo "b is greater than a"; fi; 問題は、最初の桁から数を比較することです。つまり、9は10より大きいが、1は09より大きい。 真の比較を行うために、数値を型に変換するにはどうすればよいですか?
546 bash  shell  numeric 

5
なぜメタキャラクターの周りに空白が必要なのですか?
数か月前に腕にフォーク爆弾を入れて、空白を省いたので見た目が良かったのでスキップしました。しかし、残念なことに、シェルで実行すると(常にではありませんが)、フォーク爆弾が開始されないことがありますが、構文エラーが発生します。 bash: syntax error near unexpected token `{:' 昨日、私は友人の中でそれを実行しようとしたときにそれは起こったのBashシェル、そして私は空白を追加し、それが急に働いた、:(){ :|:& };:代わりに:(){:|:&};: 空白は重要ですか。腕の構文エラーにタトゥーを入れましたか?! これは常にzshでは機能するようですが、Bashでは機能しません。 関連する質問では、空白については何も説明されていません。これは本当に私の質問です。Bashが正しく解析するために空白が必要なのはなぜですか?



21
BashスクリプトからOSを検出する方法は?
.bashrcと.bash_loginファイルをバージョン管理下に置いて、使用するすべてのコンピュータ間でそれらを使用できるようにしたいと考えています。問題は、OS固有のエイリアスがあるため、スクリプトがMac OS X、Linux、またはCygwinで実行されているかどうかを確認する方法を探していたということです。 Bashスクリプトでオペレーティングシステムを検出する適切な方法は何ですか?
525 bash  os-detection 

5
Bash変数の割り当てでコマンドが見つからないというエラー
test.shというスクリプトがあります。 #!/bin/bash STR = "Hello World" echo $STR 私が実行するsh test.shと、これが得られます: test.sh: line 2: STR: command not found 何が悪いのですか?私は非常に基本的な/初心者のbashスクリプトチュートリアルをオンラインで見て、これは変数を宣言するために彼らが言う方法です...だから私は何が間違っているのかわかりません。 私はUbuntu Server 9.10を使用しています。そして、はい、bashはにあり/bin/bashます。

10
大きなテキストファイルを同じ行数の小さなファイルに分割する方法は?
行数で分割したい大きな(行数で)プレーンテキストファイルがあります。したがって、ファイルに約200万行ある場合、200k行を含む10個のファイル、または20k行を含む100個のファイルに分割します(1つのファイルと残りのファイル。均等に分割可能であることは問題ではありません)。 私はこれをPythonでかなり簡単に行うことができますが、bashとunix utilsを使用してこれを行う何らかの忍者的な方法があるかどうかを疑問に思っています(手動でループし、行を分割/分割するのではなく)。
515 bash  file  unix 

28
キーと値のペアのファイルから環境変数を設定する
TL; DR:キー/値ペアのセットをテキストファイルからシェル環境にエクスポートするにはどうすればよいですか? 参考までに、質問の元のバージョンと例を以下に示します。 私は特定のフォルダー内の3つの変数を持つファイルを解析するスクリプトをbashで書いています。これはそのうちの1つです。 MINIENTREGA_FECHALIMITE="2011-03-31" MINIENTREGA_FICHEROS="informe.txt programa.c" MINIENTREGA_DESTINO="./destino/entrega-prac1" このファイルは./conf/prac1に保存されています スクリプトminientrega.shは、次のコードを使用してファイルを解析します。 cat ./conf/$1 | while read line; do export $line done しかしminientrega.sh prac1、コマンドラインで実行すると、環境変数が設定されません 私も使用してみましたsource ./conf/$1が、同じ問題がまだ適用されます これを行うには他の方法があるかもしれません。スクリプトの引数として渡すファイルの環境変数を使用する必要があるだけです。

19
色付けされたgrep —ファイル全体をハイライトされた一致で表示
私は見つけるgrepの--color=alwaysフラグは途方もなく有用であること。ただし、grepは一致する行のみを出力します(コンテキスト行を要求しない限り)。印刷する各行に一致があるとすると、強調表示によって機能が追加されません。 私は本当にcatファイルが好きで、パターンマッチが強調表示されたファイル全体を見たいです。 一致があるかどうかに関係なく、読み取られているすべての行を印刷するようにgrepに指示できる方法はありますか?ファイルのすべての行でgrepを実行するスクリプトを作成できることはわかっていますが、これが標準で可能かどうか知りたいと思いましたgrep。
509 bash  shell  colors  grep 

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