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

Bashは、GNUプロジェクトのUnixライクなオペレーティングシステム用の無料のシェルです。

6
ファイルのn行ごとにのみ保持する方法
かなり大きなCSVファイル(75MB)があります。グラフを作成しようとしているだけなので、すべてのデータが必要なわけではありません。 言い換え:n行を削除し、1行を保持してから、n行を削除します。 したがって、ファイルが次のようになった場合: Line 1 Line 2 Line 3 Line 4 Line 5 Line 6 n = 2の場合、出力は次のようになります。 Line 3 Line 6 これsedを行うことができるように思えますが、私はその方法を理解できていません。bashコマンドが理想的ですが、私はどんな解決策も受け入れています。
71 bash 



3
「bash -e」を使用する場合、サブシェルの出力値と終了値を取得するにはどうすればよいですか?
次のコードを検討してください outer-scope.sh #!/bin/bash set -e source inner-scope.sh echo $(inner) echo "I thought I would've died :(" inner-scope.sh #!/bin/bash function inner() { echo "winner"; return 1; } outer-scope.sh呼び出しがinner()失敗したときに終了しようとしています。以来$()、サブシェルを呼び出し、これは起こりません。 関数がゼロ以外の終了コードで終了する可能性があるという事実を保持しながら、他にどのように関数の出力を取得しますか?
70 bash 


4
ユーザー名が存在するかどうかを調べる
シェルスクリプトで、現在のシステムに特定のユーザー名が存在するかどうかを確認するにはどうすればよいですか? /etc/passwdそして/etc/shadow不完全です。OS Xのディレクトリサービス、または同様にActive Directoryを統合したLinuxを検討してください。
68 bash  unix  shell 

10
テキストファイルでの置換**正規表現なし**
テキストファイル内のテキストを置換する必要があります。通常、私は次のようなことをします sed -i 's/text/replacement/g' path/to/the/file 問題は、両方のことであるtextとは、replacementその上のダッシュ、スラッシュ、blackslashes、引用符とを含む複雑な文字列です。text物の中の必要な文字をすべてエスケープすると、すぐに読めなくなります。一方、正規表現の力は必要ありません。テキストを文字通りに置き換えるだけです。 いくつかのbashコマンドで正規表現を使用せずにテキスト置換を行う方法はありますか? これを行うスクリプトを作成するのは簡単ですが、既に何かが存在するはずです。
68 bash  regex  sed  text-editing 

4
bashスクリプトのパラメーターのいずれかが文字列と一致するかどうかを確認します
bashスクリプトに渡されたパラメーターのいずれかが文字列と一致するかどうかを確認するスクリプトを作成しようとしています。今のセットアップ方法は if [ "$3" != "-disCopperBld" -a "$4" != "-disCopperBld" -a "$5" != "-disCopperBld" -a "$6" != "-disCopperBld"] しかし、多くのパラメータがあるかもしれないので、これを行うより良い方法があるのだろうかと思っていましたか? ありがとう 編集:このコードの塊を試し、オプション-disableVenusBldを指定してスクリプトを呼び出しましたが、それでも「Starting build」が出力されます。私は何か間違っていますか?前もって感謝します! while [ $# -ne 0 ] do arg="$1" case "$arg" in -disableVenusBld) disableVenusBld=true ;; -disableCopperBld) disableCopperBld=true ;; -disableTest) disableTest=true ;; -disableUpdate) disableUpdate=true ;; *) nothing="true" ;; esac shift …



2
lprで使用できるプリンタ名をリストする方法は?
lprmanページには、先のプリンタがで指定することができると言う-Pフラグ。 -P destination[/instance] Prints files to the named printer. Ubuntu / GnomeのGUIを使用して、ローカルのSamba共有にさまざまなプリンターを「追加」しました。これらの利用可能なプリンターのリストを、-Pフラグが期待する形式で(できればbashシェルから)取得するにはどうすればよいですか?
64 linux  ubuntu  bash  printing  lpr 

4
Windows 10 Ubuntu Bash Shell:他のWindowsドライブをマウントするにはどうすればよいですか?
Windows 10のUbuntu Bashシェルを使用しています。Cドライブを/ mnt / cとしてマップします。 E:およびF:としてWindowsにマウントされた他のローカル物理ハードドライブがあります。 Bashにこれらのドライブもマウントするように指示するにはどうすればよいですか(理想的には/ mnt / eおよび/ mnt / fに自動的にマウントされますが、手動でマウントしても問題ありません)。「sudo fdisk -l」は機能していないようです(/ proc / partitionsを開けません)。そのため、それらの名前を見つける方法がわかりません。
64 windows-10  bash  mount 

4
なぜですか。デフォルトではパスにありませんか?
長年にわたるUNIXライクなシステム(私にとって最も関連性の高いLinux)では、.(現在のディレクトリ)が$PATHデフォルトでは決して存在しないことに気付きました。どうしてこれなの? 私は何年も前にそれがセキュリティ問題であったことを思い出したが、私が読んだ記事は問題が正確に何であるかを説明しなかった。誰かがディレクトリの悪意のあるバージョンを残しlsたりcp、ディレクトリに残したりする可能性があり、それが存在することに気付かずに実行することになりますか?
63 bash  path 

7
Bashで終了したコマンドを継続的に再実行する
何らかの理由(エラーなど)でコマンドが終了するたびにコマンドを再実行し続ける簡単な方法を見つけようとしています。 これにアプローチする最良の方法は何でしょうか? 編集:私は前に十分に明確ではなかった。前の実行が終了するまで、次の実行を待つ必要があります。 編集2:ほとんどすべての答えがうまく機能します。私は、ほとんどの答えがプロセスを分岐するか、一度だけ再実行するかのいずれかが間違っていると思っていました。
62 linux  bash 

10
bashスクリプトを使用してパーティションを作成およびフォーマットする方法は?
bashスクリプトを使用してパーティションを作成およびフォーマットする方法はありますか? fdiskでできると思いますが、bashスクリプトからfdiskシェルにコマンドを送り、fdiskシェルを終了する方法がわかりません。 パーティションを作成してから、bash内からntfsにフォーマットしたいです。

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