タグ付けされた質問 「command-line」

コマンドラインは、シェルへのインタラクティブなインターフェースです。

4
コマンドの出力を複数のコマンドにリダイレクトすることは可能ですか?
私の知る限り、teeコマンドを使用して、標準出力を画面とその他のファイルに分割できます。 command -option1 -option2 argument | tee file1 file2 file3 teeを使用してファイルの代わりにコマンドに出力をリダイレクトすることは可能ですか?理論的にはコマンドのチェーンを作成できますか?
21 command-line  pipe  tee 

2
端末ライン入力を終了するにはCtrl + D
私が行った場合 $ cat > file.txt テキストCtrl- DCtrl-D 質問1:私は、プレスが入力しない場合は、なぜ私が押す必要がありますCtrl- D二度? 私が行った場合 $ cat > file.txt PA用のBAM pshhh Ctrl-Z [2]+ Stopped cat > file.txt $ cat file.txt $ cat > file.txt pa bam pshhh Ctrl-Z [2]+ Stopped cat > file.txt $ cat file.txt pa bam pshhh 2行目でファイルが1行であるのはなぜですか?

6
ファイルの最後に「>>」以外の行を追加する別の簡単な方法はありますか?
最近、短い文章をtree_holeファイルにエコーしています。 私はecho 'something' >> tree_holeこの仕事をしていました。 しかし、私はこれを頻繁に行ったため、の>代わりにを間違って入力するとどうなるか常に心配していました>>。 そこで、bashrcで独自のグローバルbash funcを作成しました。 function th { echo "$1" >> /Users/zen1/zen/pythonstudy/tree_hole; } export -f th しかし、ファイルの最後に行を追加する別の簡単な方法があるかどうか疑問に思っています。他の機会に頻繁に使用する必要があるかもしれないからです。 何かありますか?

1
小さいディレクトリで長い時間がかかる
Ubuntuを実行して、ターミナルを開いて sudo bash cd / ls | head -n 1000 予想どおり、約20個のディレクトリが返されます。 ただし、lsを実行し、それを何かにパイプしないと、lsは別の端末から削除するまでそこにハングします。何が起きているのでしょうか? 編集: > type ls ls is aliased to `ls --color=auto` 編集: > /bin/ls / <normal response> > /bin/ls --color=auto <hangs indefinitely> lsの出力を色付けすると、このコマンドがハングするのはなぜですか?
21 shell  command-line  files  ls 

6
コマンドラインに優しいスプレッドシート
そのようなものは存在しますか?CLI環境で適切に表示されるテキストベースのスプレッドシート。私は自分が好きなようにできることcat foobar.csvを知っていますが、それは特に実用的でも魅力的でもありません。テーブルをフォーマットするのが難しいとは想像できず、おそらく特定のルール(数学?)に従うこともできます。 Emacsはorg-modeテキストベースのテーブルを非常にうまく処理し、複数の形式にエクスポートできます。ただし、Emacsを使用する必要があります!Vimユーザーとしては避けたいものです。



4
プロセスの特定のスレッドを強制終了するにはどうすればよいですか?
$ ps -e -T | grep myp | grep -v grep 797 797 ? 00:00:00 myp 797 798 ? 00:00:00 myp 797 799 ? 00:00:00 myp 797 800 ? 00:00:00 myp これは、mypPID = 797のプロセスと、異なるSPIDの4つのスレッドを示しています。 プロセス全体を強制終了せずに、プロセスの特定のスレッドを強制終了するにはどうすればよいですか。その特定のスレッドに致命的な依存関係がある場合には、まったく不可能な場合があることを理解しています。しかし、どのような場合でも可能ですか?はい、どうですか? 試しましたがkill 799、プロセス自体は終了しました。これはmyp、プロセスなしで失敗する依存関係があったため800か、killは単純で個々のプロセスを強制終了できないためであるかどうかわかりません。

2
日付コマンドで12月31日の週番号が間違っている
12月31日の週番号を取得しようとすると、1が返されます。12月30日の週番号を取得すると、52になります---これは予想通りです。月曜日が正しい日。これは、Ubuntuを実行しているRPI上にあります。 $ date -d "2018-12-30T1:58:55" +"%V%a" 52Sun $ date -d "2018-12-31T1:58:55" +"%V%a" 01Mon 時間文字列なしの同じ問題 $ date -d "2018-12-31" +"%V%a" 01Mon

2
ss-Linuxソケット統計ユーティリティの出力形式
オプションを使用するssと、特定の行の下-pでuser/pid/fd列がジャンプします。たとえば、これは私が実際に見ているものです: # ss -nulp4 State Recv-Q Send-Q Local Address:Port Peer Address:Port UNCONN 0 0 *:20000 *:* users:(("perl",pid=9316,fd=6)) UNCONN 0 0 *:10000 *:* users:(("perl",pid=9277,fd=6)) UNCONN 0 0 192.168.100.10:53 *:* users:(("named",pid=95,fd=517),("named",pid=95,fd=516)) UNCONN 0 0 127.0.0.1:53 *:* users:(("named",pid=95,fd=515),("named",pid=95,fd=514)) 優先出力フォーマット: # ss -nulp4 State Recv-Q Send-Q Local Address:Port Peer Address:Port UNCONN 0 0 *:20000 …

6
最初のxファイルを移動する方法
数千の無秩序なファイルがあるこの巨大なフォルダーがあります。mvコマンドを使用して最初の5000をサブフォルダーに移動することは可能ですか?今のところ私はファイルを mv *some_pattern* ./subfolder1/ 今のところ、画像を非常にランダムに移動していますが、各サブフォルダーに正確に5000個のファイルがない場合、それはそれほど重要ではありません。それを行うためのより良い方法はありますか?

3
bashで1つ以上のプログラムのパスワードを渡す安全な方法
bashスクリプトを書いているので、ユーザーにパスワードを要求してに渡す必要がありますopenssl。なくなりopensslパスワード自体を読むことができ、私はプログラムの2つの実行のために必要と二回ユーザーに依頼する必要はありません。スクリプトは次のとおりです。 cp file{,.old} read -sp 'Enter password. ' PASS; echo export PASS # decode | edit | encode openssl enc -d -aes-256-cbc -k "$PASS" -in file.old | \ sed ... | openssl enc -e -aes-256-cbc -k "$PASS" -out file unset PASS パスワードはコマンドラインを見ると簡単に入手できるため、これは安全ではありません。psたとえば、誰かがそれを使用して読むことができます。 openssl環境変数からパスワードを読み取ることができますので、私は置き換えることができ-k "$PASS"て-pass env:PASS、それはまだ安全ではありません。任意のプロセスの環境変数は自由に読み取ることができます(繰り返しpsます)。 それでは、どうすれば2つのopensslインスタンスにパスワードを安全に渡すことができますか?

6
LinuxでGNU coreutilsを置き換えるオプションはありますか?
私は自分のLinuxシステムでGNU Coreutilsの使用を中止することを考えてきましたが、正直なところ、他の多くのGNUコンポーネントとは異なり、(Linuxで)代替手段を考えることはできません。GNU coreutilsにはどのような代替手段がありますか?複数のパッケージが必要ですか?プロジェクトへのリンクは必須です。ディストリビューションパッケージに名前を付けるためのボーナスポイントです。 また、Linuxで動作することがわかっていて、指示を参照できる場合を除き、提案しないでください。私はすぐにカーネルを切り替えることを疑っています./configure; make; make install。確かにCをハッキングするつもりはありません。 警告:ディストリビューションがcoreutilsを使用している場合、それらを削除するとディストリビューションの機能が損なわれる可能性があります。ただし$PATH、ほとんどのスクリプトは絶対パスを使用する必要があるため、これらを最初に配置しても問題はありません。

2
bash履歴で一連のコマンドを実行するためのショートカットはありますか?
私に次の些細な例があると仮定しますhistory: ... 76 cd ~ 77 ./generator.sh out.file 78 cp out.file ~/out/ 79 ./out/cleaner.sh . 80 ls -alnh /out ... 私は、コマンドを実行したい場合は77、78、および791つのコマンドで、このためのショートカットが存在しませんか?私は試してみましたが!77 !78 !79、実行するためにそれらをすべて1行に配置するだけです。

6
対話的に、bashで数字のn回の繰り返しを入力する方法
コマンドを実行したい foo --bar=baz <16 zeroes> 16個のゼロを効率的に入力するには* Alt押した1 6 0ままにすると、次のことが160回繰り返されますが、これは望んでいないことです。emacsではAlt-[number]またはを使用できますCtrl-u 1 6 Ctrl-u 0が、bash Ctrl-uでは現在入力されている行を削除し、次のゼロは行に0を追加するだけです。 私が行った場合 foo --bar=baz $(printf '0%.0s' {1..16}) その後history、上記ではなく、正確に表示されfoo --bar=baz 0000000000000000ます。すなわち、bashは私が望むように動作しません。(編集:ポイントされている、$(...)コマンド置換を使用せずにいくつかのゼロを入力したい) (*)「効率的に」の技術的定義は「with O(log n)keystrokes」、できれば16の桁数(16のすべての値)に等しい定数のキーストローク数であると思います。emacsの例は、この定義により効率的と見なされます。

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