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

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

6
bashを使用して変数から特定の文字を削除します
変数(私の場合は開発キットバージョン)を解析して、dot(.)を無料にします。の場合version='2.3.3'、目的の出力は233です。 私は以下のように試しましたが、.私を与える別のキャラクターに置き換える必要があります2_3_3。うまく行けば大丈夫tr . ''だっただろう。 1 VERSION='2.3.3' 2 echo "2.3.3" | tr . _

2
shellshock(CVE-2014-6271 / 7169)バグが導入されたのはいつですか?それを完全に修正するパッチは何ですか?
バグに関するいくつかのコンテキスト:CVE-2014-6271 Bashは、シェル変数だけでなく、プロセス環境を介した(間接的な)子プロセスへの他のbashインスタンスへのシェル関数のエクスポートもサポートしています。現在のbashバージョンは、関数名で指定された環境変数と、変数値に「(){」で始まる関数定義を使用して、関数定義を環境全体に伝播します。この脆弱性は、関数定義の処理後にbashが停止しないために発生します。関数定義に従ってシェルコマンドの解析と実行を続けます。たとえば、環境変数の設定 VAR=() { ignored; }; /bin/id 環境がbashプロセスにインポートされると、/ bin / idが実行されます。 ソース:http : //seclists.org/oss-sec/2014/q3/650 バグはいつ導入され、それを完全に修正するパッチは何ですか?(CVE-2014-7169を参照) CVE(最初)(3. {0..2}および4. {0..3})に記載されている脆弱なバージョンとは何ですか? バグのあるソースコードは他のプロジェクトで再利用されていますか? 追加情報が望ましい。 関連:env x = '(){:;}; command 'bash doとなぜ安全でないのですか?

1
二重引用符はいつ必要ですか?
以前は$VARIABLE、少なくともシェルが単一のアイテムとして解釈することを望んでいた場合、を含む式を二重引用符で囲む$VARIABLEことを推奨していました。 ただし、シェルの最近のバージョンでは、二重引用符は必ずしも必要ではありません(少なくとも上記の目的のため)。例えば、中bash: % FOO='bar baz' % [ $FOO = 'bar baz' ] && echo OK bash: [: too many arguments % [[ $FOO = 'bar baz' ]] && echo OK OK % touch 'bar baz' % ls $FOO ls: cannot access bar: No such file or directory ls: cannot access …

5
「sort -u」と「sort |」の違いは何ですか ユニック」?
並べ替えられた一意のリストを取得する必要がある人がいるところはどこでも、常にパイプされsort | uniqます。誰かがsort -u代わりに使用する例を見たことはありません。何故なの?違いは何ですか?また、一意のフラグよりもuniqを使用してソートする方が良いのはなぜですか?
120 bash  sort  uniq 

30
bashシェルでのクイックディレクトリナビゲーション
私は、例えば、頻繁に全く関係のないパスにあるディレクトリを切り替えたい/Project/Warnest/docs/と~/Dropbox/Projects/ds/test/。 しかし、私はcd /[full-path]/いつもタイプしたくありません。以前に作業したディレクトリに切り替えるショートカットコマンドはありますか? 私が考えることができる1つの解決策bash .profileは、頻繁に使用されるディレクトリとcdそれらの変数を使用してそれらに環境変数を追加することです。 しかし、これに対する他の解決策はありますか?

4
コマンドラインで単語を逆方向に削除するにはどうすればよいですか(bashとzsh)?
コマンドラインで単語を逆方向に削除するにはどうすればよいですか?Ctrl+ を使用して最後の「単語」を削除するエディターには本当に慣れているBackspaceので、コマンドラインでもその機能が必要です。 現時点ではBashを使用しており、単語を後方にジャンプしてから前方に削除することはできますが、これをクイックキーまたはイベントとしてCtrl+ として使用したいのBackspaceです。 どうすればこれを達成できますか?


5
ハッシュコマンドの目的は何ですか?
実行するhashと、ハッシュが最後にリセットされてから実行されたすべてのコマンドのパスが表示されます(hash -r) [root@c04c ~]# hash hash: hash table empty [root@c04c ~]# whoami root [root@c04c ~]# hash hits command 1 /usr/bin/whoami [root@c04c ~]# whoami root [root@c04c ~]# hash hits command 2 /usr/bin/whoami マニュアルページによると、ハッシュの目的は次のとおりです。 / usr / bin / hashユーティリティは、現在のシェル環境が見つかったユーティリティの場所を記憶する方法に影響します。指定された引数に応じて、記憶されている場所のリストにユーティリティの場所を追加するか、リストの内容を削除します。引数が指定されていない場合、リストの内容について報告します。この-rオプションにより、シェルは記憶されているすべての場所を忘れます。 シェルにビルトインとして提供されるユーティリティは、ハッシュによって報告されません。 コマンドを何回入力したかを確認する以外に、のユーティリティが表示されませんhash。 thegeekstuff.comのトップ15の便利なコマンドにも取り上げられました どのような点でhash便利ですか?
118 bash  history 

5
出力をログファイルにリダイレクトし、同時にプロセスをバックグラウンドにできますか?
出力をログファイルにリダイレクトし、同時にプロセスをバックグラウンドにできますか? 言い換えれば、私はこのようなことをすることができますか? nohup java -jar myProgram.jar 2>&1 > output.log & または、それは合法的なコマンドではありませんか?または、次のように手動でバックグラウンドに移動する必要がありますか? java -jar myProgram.jar 2>$1 > output.log jobs [CTRL-Z] bg 1
116 bash  shell  shell-script 

3
リモートマシンでローカルスクリプトを実行し、引数を含めるにはどうすればよいですか?
ローカルで実行すると正常に実行されるスクリプトを作成しました。 ./sysMole -time Aug 18 18 引数"-time"、"Aug"、"18"、および"18"は、スクリプトに正常に渡されます。 現在、このスクリプトは、リモートマシンで実行されるように設計されていますが、ローカルマシンのローカルディレクトリから実行されます。例: ssh root@remoteServer "bash -s" < /var/www/html/ops1/sysMole それもうまくいきます。しかし、たとえば、前述の引数(-time Aug 18 18)を含めようとすると問題が発生します。 ssh root@remoteServer "bash -s" < /var/www/html/ops1/sysMole -time Aug 18 18 そのスクリプトを実行した後、次のエラーが表示されます。 bash: cannot set terminal process group (-1): Invalid argument bash: no job control in this shell 私が間違っていることを教えてください、これは非常にイライラします。

3
linux + X日を追加して新しい仮想日付を取得
Linux(RH 5.3)マシンがあります 10日と日付を追加/計算する必要があるので、新しい日付(有効期限)を取得します) 例えば # date Sun Sep 11 07:59:16 IST 2012 だから私は取得する必要があります NEW_expration_DATE = Sun Sep 21 07:59:16 IST 2012 新しい有効期限の計算方法をアドバイスしてください(bash、ksh、またはdateコマンドの操作?)
115 linux  bash  shell-script  date 


8
名前付き引数をシェルスクリプトに渡す
名前付きパラメーターをシェルスクリプトに渡す(受け取る)簡単な方法はありますか? 例えば、 my_script -p_out '/some/path' -arg_1 '5' そして内部でmy_script.shそれらを受け取ります: # I believe this notation does not work, but is there anything close to it? p_out=$ARGUMENTS['p_out'] arg1=$ARGUMENTS['arg_1'] printf "The Argument p_out is %s" "$p_out" printf "The Argument arg_1 is %s" "$arg1" これはBashまたはZshで可能ですか?

3
コマンドライン引数をbashスクリプトに渡す
bashスクリプトプログラミングは初めてです。 入力として1つの文字列引数(名前)を受け入れるbashスクリプト 'deploymLog'を実装します。 [root@localhost Desktop]# ./deploymLog.sh name ここで、コマンドラインを介して文字列の引数(名前)を渡したい 最初のステップとして、現在のタイムスタンプをこの入力文字列とともにLogone.txt、現在のディレクトリにあるログファイルに以下の形式で追加する必要があります。 [name]=[System time timestamp1] どのように可能ですか?
114 bash  shell  scripting 


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