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

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

2
サブシェルのPIDを取得するにはどうすればよいですか?
サブシェルのPIDを取得するにはどうすればよいですか? 例えば: $ echo $$ 16808 元のシェルが展開するため、これは機能しません$$。 $ ( echo $$ ) 16808 単一引用符が機能しないのはなぜですか?元のシェルが単一引用符を削除した後、サブシェル$$自体は展開しませんか? $ ( echo '$$' ) $$ なぜうまくいかevalないのですか?さevalサブシェルで実行?なぜ元のシェルのPIDが表示されるのですか? $ ( eval echo '$$' ) 16808 ありがとう。
13 bash  process  subshell 

2
シェルで浮動小数点数を丸める方法は?
コマンドラインでIEEE 754浮動小数点数を正しく丸めるにはどうすればよいですか? 出力数値の精度-小数桁数を指定したいのですが。 丸め6.66精度にして1与える必要があり6.7、たとえば、。以下の表の詳細: Value Precision Rounded 6.66 0 7 6.66 1 6.7 6.66 2 6.66 6.66 3 6.660 6.666 3 6.666 6.6666 3 6.667 対話型シェルで使用できる必要がありますが、本番シェルスクリプトで使用するには十分に堅牢であることが理想的です。


2
Bashのユーティリティプログラムへの連鎖呼び出しをパラメーター化する
Bdinシェルで使用されるブラックボックスUNIXプログラムがあり、stdinからデータの列を読み取り、それらを処理して(平滑化効果を適用して)、stdoutに出力します。UNIXパイプで使用します。たとえば generate | smooth | plot よりスムーズにするために、スムーズを繰り返すことができるので、Bashコマンドラインから次のように呼び出されます。 generate | smooth | smooth | plot あるいは generate | smooth | smooth | smooth | smooth | smooth | smooth | smooth | smooth | smooth | smooth | plot これは厄介です。私は、Bashラッパーを作成して、smoothその出力をsmooth任意の回数の新しいインスタンスにパイプで送り、新しいインスタンスに戻すことができるようにします generate | newsmooth 5 | plot の代わりに generate | smooth | …


2
セッションを適切に閉じるショートカット(exitと入力しない)でシェルを終了する
毎日使用する多くのsshセッションでProxyJumpコマンドを使用します。また、これらのセッションでユーザーを頻繁に切り替えますexit。3回または4回連続して入力するのは面白くありません。 私はnewline+ ~+ .sshセッションを終了することに気づいていますが、それが思いのままに終了するかどうかを確認exitする必要がありますが、exit3または4回入力するように単一のコマンドまたはショートカットで現在のシェルのすべてのセッションを終了するにはどうすればよいですか私の場合、一度限りのものになりますか?
12 bash  shell  session 

3
「IFS = $」の「\ n」\ n 'は変数ですか?
改行を設定IFSするには、接頭辞として$を使用する必要があることに注意してください IFS=$'\n' ただし、コロンを設定する場合は、 IFS=: ある\n変数がありますか?
12 bash 

3
「cat {foo}」がfooを出力しないのに、「cat {foo、bar}」が出力するのはなぜですか?
私はサブフォルダ内のテキストファイルを連結しようとしていました: cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1}/book.txt > out$var しかし、これは何も返しませんでした。そこで、存在しない「サブフォルダー2」を追加してみました cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1,subfolder2}/book.txt > out$var そして今回はうまく機能し、ファイルを正常に連結しました。なぜこれが起こるのですか?

3
パススラッシュの後のbashブレースの展開
ブレース拡張を使用して、ファイルを別の名前で同じディレクトリにコピーしようとしています。私はbash 4.4.18を使用しています。 私がやったことは次のとおりです。 cp ~/some/dir/{my-file-to-rename.bin, new-name-of-file.bin} しかし、私はこのエラーを受け取ります: cp: cannot stat '/home/xyz/some/dir/{my-file-to-rename.bin,': No such file or directory このような単純なブレース展開でも、同じエラーが発生します。 cp {my-file-to-rename.bin, new-name-of-file.bin} 私は何を間違えていますか?


4
bashはポインターの使用をサポートしていますか?
簡単な質問。bashシェルは、シェルスクリプトを記述するときにポインターを使用することをサポートしていますか? ${var[@]}配列を反復処理するときの拡張表記法に精通して$varいますが、これが配列インデックスを反復処理するためにポインターを利用していることは明らかではありません。bashは他の言語のようなメモリアドレスへのアクセスを提供しますか? bashがポインターの使用をサポートしていない場合、他のシェルは何をしますか?
12 bash 

3
コマンドがX時間で終了しない場合はbashしますか?
私は次のようなものを実行しようとしています: sudo dhclient $wifi || otherFunction 問題は、dhclient失敗するとエラーをスローする代わりにハングするだけです。 60秒以内に終了しない場合dhclientは、上記のコードを書き直して強制終了し、otherFunction呼び出すことdhclientができますか?
12 bash  timeout 

6
文字列の末尾の空白を別の文字で埋める
hello world20文字以上出力したいです。 printf "%-20s :\n\n" 'hello world!!' # Actual output hello world!! : # Wanted output hello world!!========: ただし、スペースで補完するのではなく、代わりに「=」で補完します。それ、どうやったら出来るの?
12 bash  shell  string  printf 

4
bash:findのselectへのホワイトスペースセーフな手続き的使用
これらのファイル名を考えると: $ ls -1 file file name otherfile bash 埋め込まれた空白でそれ自体は完全にうまくいきます: $ for file in *; do echo "$file"; done file file name otherfile $ select file in *; do echo "$file"; done 1) file 2) file name 3) otherfile #? しかし、時々私も厳密内のすべてのファイル、またはと仕事したくない場合があります$PWDところで、find入ってくるも、ハンドル空白名目上。: $ find -type f -name file\* ./file ./file name …

1
書き込まれているファイルを除くフォルダ内のすべてのファイルをコピーする方法は?
HTTPiedownloadingを介して複数のファイルをフォルダーにダウンロードします。bashスクリプトの目的は、ダウンロードしたファイルを処理することです。ダウンロードしたファイルを別のフォルダーにコピーしようとしました。 find /folder/downloading -type f -exec mv '{}' /folder/downloaded \; しかし、これはまだ終了していないファイルもコピーします。-mmin +5コマンドに追加して、古いファイルへの転送を制限しようとしました。ファイルを書き込んだままにして、ダウンロードしたファイルのみを転送する効率的なコマンドは何ですか?

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