最新記事

Bash 条件文: 式を「and」で結ぶ方法は? (if [ ! -z $VAR && -e $VAR ]) 質問する
bash
shell

Bash 条件文: 式を「and」で結ぶ方法は? (if [ ! -z $VAR && -e $VAR ]) 質問する

「and」テストのやり方がよくわからないようです。 でうまく機能する引数が存在することを確認したかったのです[ -e $VAR ]が、 も空の文字列で true として評価されることがわかりました。これは望ましくありません。 これらを「and」で結合するにはどうすればよいでしょうか? あるいは、私が望むことを実現する別の単項テストがあるのでしょうか?

Admin

再帰なしで検索する 質問する
unix
find
shell

再帰なしで検索する 質問する

findサブディレクトリに再帰しないような方法でコマンドを使用することは可能ですか? たとえば、 DirsRoot |-->SubDir1 | |-OtherFile1 |-->SubDir2 | |-OtherFile2 |-File1 |-File2 そして、次のような結果find DirsRoot --do-not-recurse -type fになるでしょうかFile1, File2?

Admin

サブプロセスコマンドからのライブ出力 質問する
python
shell
logging
error-handling
subprocess

サブプロセスコマンドからのライブ出力 質問する

私は、流体力学コードのドライバーとして Python スクリプトを使用しています。シミュレーションを実行するときは、subprocess.Popenコードを実行し、出力を--- から収集してstdout---に取り込み、出力情報を印刷 (およびログ ファイルに保存) して、エラーがないか確認します。問題は、コードがどのように進行しているかがまったくわからないことです。コマンド ラインから直接実行すると、どの反復段階であるか、何時か、次のタイム ステップは何かなどの出力が得られます。stderrsubprocess.PIPE 出力を保存し(ログ記録とエラーチェック用)、ライブストリーミング出力も生成する方法はありますか? 私のコードの関連セクション: ret_val = subprocess.Popen( run_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True ) output, errors = ret_val.communicate() log_file.write(output) print output if( ret_val.returncode ): print "RUN failed\n\n%s\n\n" % (errors) success = False if( errors ): log_file.write("\n\n%s\n\n" % errors) もともと私は、コピーが直接ログファイルに送信され、ストリームが直接端末に出力されるようにパイプしていましたrun_commandがtee、その方法ではエラーを保存できません (私の知る限り)。 これまでの私の一時的な解決策: ret_val = subprocess.Popen( run_command, stdout=log_file, stderr=subprocess.PIPE, shell=True ) while not ret_val.poll(): log_file.flush() 次に、別のターミナルでtail -f log.txt(st log_file = 'log.txt') を実行します。

Admin

bash で複数のバックグラウンド コマンドを 1 行で実行するにはどうすればよいですか? 質問する
linux
bash
shell

bash で複数のバックグラウンド コマンドを 1 行で実行するにはどうすればよいですか? 質問する

通常、次のように複数のコマンドを実行します。 sleep 2 && sleep 3 または sleep 2 ; sleep 3 しかし、1 つのコマンド ライン コマンドから両方をバックグラウンドで実行したい場合はどうすればよいでしょうか? sleep 2 & && sleep 3 & &&は機能しません。; それを実行する方法はありますか?

Admin

バッチファイルでパラメータが空かどうかをテストする適切な方法は何ですか? 質問する
windows
shell
batch-file
cmd

バッチファイルでパラメータが空かどうかをテストする適切な方法は何ですか? 質問する

変数が設定されているかどうかをテストする必要があります。いくつかの手法を試しましたが、が の%1場合のように、 が引用符で囲まれている場合は失敗するようです。%1"c:\some path with spaces" IF NOT %1 GOTO MyLabel // This is invalid syntax IF "%1" == "" GOTO MyLabel // Works unless %1 has double quotes which fatally kills bat execution IF %1 == GOTO MyLabel // Gives an unexpected GOTO error. によるとこのサイトこれらはサポートされているIF構文タイプです。したがって、それを実行する方法がわかりません。 IF [NOT] ERRORLEVEL number command IF [NOT] string1==string2 command IF [NOT] EXIST filename command 更新: 2020-10-25 に、受け入れられた回答を括弧の使用からチルダの使用に更新しました。チルダの方が安全なので、より良いと誰もが言っています。チルダは見た目が複雑で、目的が明確ではないため、少し迷っていますが、それでも変更しました。

Admin

ファイルの2番目の列に基づいてデータを並べ替える 質問する
bash
shell
unix

ファイルの2番目の列に基づいてデータを並べ替える 質問する

n2 列と行数のファイルがあります。 column1 にnamesは column2 が含まれますage。 ageこのファイルの内容を(2 番目の列)に基づいて昇順で並べ替えたいと思います。 結果には、name最年少の人の とname、その次に 2 番目に年下の人の などが表示されます。 ワンライナーのシェルまたは bash スクリプトに関する提案はありますか。

Admin

Bash で定数に名前を付ける際の規則は何ですか? 質問する
bash
shell
constants
naming-conventions

Bash で定数に名前を付ける際の規則は何ですか? 質問する

シェル スクリプトでは、命名規則を使用したりスタイルを使用したりしていますがJava、Python定数の命名方法についてはまだよくわかりません。 多くの慣例により、定数の命名には「大文字」と「アンダースコア」を併用することが推奨されていますMY_CONSTANT。たとえば、 PI。しかし、 ではBash、これは次のものと衝突する可能性があります。環境変数。 では、Bash 定数の適切な命名規則は何でしょうか?

Admin

Bash 条件文: 式を「and」で結ぶ方法は? (if [ ! -z $VAR && -e $VAR ]) 質問する
bash
shell

Bash 条件文: 式を「and」で結ぶ方法は? (if [ ! -z $VAR && -e $VAR ]) 質問する

「and」テストのやり方がよくわからないようです。 でうまく機能する引数が存在することを確認したかったのです[ -e $VAR ]が、 も空の文字列で true として評価されることがわかりました。これは望ましくありません。 これらを「and」で結合するにはどうすればよいでしょうか? あるいは、私が望むことを実現する別の単項テストがあるのでしょうか?

Admin