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

コマンドラインインターフェイス(CLI)の使用に関する質問。

1
エイリアス:.bash_rc、.bash_aliases、/ usr / local / binの違い
ターミナルで遊んでみて、永続的なエイリアスを作成する方法はたくさんあることに気づきました。 私はLinux初心者です。私が知っていることから、次のことをしています。 sudo ln -s /path/to/executable /usr/local/bin/desired_alias 追加desired_alias = '/path/to/executable'します~/.bashrc これらの行のコメントを解除し~/.bashrcます。 if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi に入れdesired_alias = '/path/to/executable'て~/.bash_aliases すべて同じ効果があります。 1番目と2番目の方法の違いは何ですか?

1
アイドル時にシェルスクリプトまたはコマンドを実行する
私は、bashシェルのアイドル時間に基づいてシェルスクリプトまたはコマンドを実行する可能性を探しています。 たとえば、私のサーバーへのSSHセッションで、ターミナルでX分間非アクティブになった後、のような目的のプログラムを開始するコマンドが必要でcmatrix、戻ってキーを押すと取得されます私が戻ったところに戻ります。

4
コマンドの出力をコマンドとしてBashにインポートするにはどうすればよいですか?
システム Linux hosek 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux 問題 変数を格納するために、bashスクリプトでコマンドとして出力を取得する必要があります。 例 sed -n '/# Main configuration./,/# Websites./p' webcheck-$category.cfg | sed '1,1d' | sed '$ d' このコマンドは次の行を返します。 email_sender='some@email.com' email_recipients='another@email.com' これらの出力/行をスクリプトのコマンドとしてどのように読み取り/実行できますか?この出力をファイルに保存してから、sourceコマンドのみで読み取りますか? | sourceコマンドの最後で試しましたが、ファイルからしか読み取れません。 echo最初は試しましたが効果がありませんでした。 ありがとう。

2
bashコマンドから部分文字列を取得する方法
コマンドから取得した次の部分文字列があるとしますdf /dev/sdb1 | tail -n 1。 /dev/sdb1 1952971772 1441131032 511840740 74% /media/kaiman/ShareData 私は、抽出したい1952971772と74%、その文字列から、bashスクリプトでそれを使用します。 一部のカットコマンドなどを使用できることはわかっていますが、たとえばサイズが変更されると機能しなくなります。 私も正規表現か何かを使用することについて考えましたが、私は最も推奨されるアプローチを持ちたいと思います。 前もって感謝します!

1
bashオートコンプリートが完了のページ化されたリストを表示するタイミングをどのように制御しますか?
以前のLinuxインストールでは、bashのオートコンプリートは常に問題なく機能していました。ファイルに何かをしたい場合は、ファイル名のプレフィックスを指定し、プレビュターに一致するすべてのタブ一覧を押すと、その下のプロンプトがコマンドとプレフィックスで繰り返されるため、すぐに入力を続けることができます。 システムをkubuntu 18.04に更新しましたが、オートコンプリートが流暢に機能しなくなりました。さらに奇妙なことに、これはコンソールに依存しているように、動作は予測できません。コマンドがの場合、less(上記のように)常に正しく機能しますが、コマンドがcpまたはの場合mv、動作は異なります。正しく動作することもありますが、多くの場合、一致するファイルのリストが(プロンプトを非表示にして)qより多く表示されます。小さなことですが、追加のタイピングが必要なので面倒です。 その.bashrc呼び出しはわかります/usr/share/bash-completion/bash_completion が、これに対する変更は行っていません。 質問:この予測不可能な動作の原因は何ですか?どうすれば修正できますか?

4
SSHはif条件でどのように機能しますか?
ifファイルを計算し、最新の3つのファイルを除くすべてを削除するステートメントがあります。しかし、このコマンドをリモートで実行したいと思います。条件と組み合わせるにsshはどうすればよいifですか? 私はこれを試しましたが、成功しませんでした。 #!/bin/bash ssh -t test@192.168.94.139 "cd /var/www/test.com/backup ; if [ $(ls | wc -l) -lt 3 ] then echo "Less" else [ $(ls -t *.tgz|awk 'NR >3'|xargs rm -f) ] echo "deleted" fi" 私が得たエラー: ls:* .tgzにアクセスできません:そのようなファイルまたはディレクトリはありません

1
解凍してテキストファイルを追加して再圧縮するシェルコマンドまたはスクリプト
仕事用に200個のzipファイルを作成しましたが、それぞれに.txtを追加するのを忘れていることに気付きました。この作業をやり直すのに何時間も費やす代わりに、私はどんな助けにも感謝します。 誰かがbashを使用して解凍し、.txtファイルを追加して、200個すべてのファイルを再圧縮する方法を知っていますか?.txtファイルの名前は、.zipファイルだけを変更するわけではありません。 ありがとうございました。

6
PDFがスキャンされたかどうかを確認する簡単な方法はありますか?
私には何千ものドキュメントがあり、それらのいくつかはスキャンされます。したがって、ディレクトリに属する​​すべてのPDFファイルをテストするスクリプトが必要です。それを行う簡単な方法はありますか? ほとんどのPDFはレポートです。したがって、彼らは多くのテキストを持っています。 それらは非常に異なりますが、以下で説明するようにスキャンされたものは、スキャンに結合された不安定なOCRプロセスにより、テキストを見つけることができます。 スキャンされていない スキャンした1 スキャン2 以下のコメントでのSudodusによる提案は非常に興味深いようです。スキャンしたPDFとスキャンしていないPDFの違いを見てください。 スキャン済み: grep --color -a 'Image' AR-G1002.pdf <</BitsPerComponent 8/ColorSpace/DeviceRGB/Filter[/DCTDecode]/Height 2197/Length 340615/Name/Obj13/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 40452/Name/Obj18/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 41680/Name/Obj23/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 41432/Name/Obj28/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 59084/Name/Obj33/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 8/ColorSpace/DeviceRGB/Filter[/DCTDecode]/Height 2197/Length 472681/Name/Obj38/Subtype/Image/Type/XObject/Width …

2
コマンドラインからSteamプロトンアプリを実行するとエラーが発生する
Steamを介してインストールされているがSteamを使用しないプロトンアプリを起動したいのですが。 ポイントは、私が自分のコマンドラインランチャーを作成してパラメーターを渡すことができるなどです... 私はこれにまったく慣れていないので、どの角で雄牛をつかむのかわかりません。 Steamのライブラリを通り抜けることができますか、それとも独自のバージョンのプロトンをインストールする必要がありますか? これが私のシステムから収集されたシステム情報の流れです: Computer Information: Manufacturer: Unknown Model: Unknown Form Factor: Desktop No Touch Input Detected Processor Information: CPU Vendor: GenuineIntel CPU Brand: Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz CPU Family: 0x6 CPU Model: 0x2d CPU Stepping: 0x7 CPU Type: 0x0 Speed: 3800 Mhz 12 logical processors 6 …



6
'/'文字を含むtxtファイルから名前を付けてディレクトリを作成する
このようなテキストを含む.txtファイルがあります A1/B1/C1 A2/B2/C2 A3/B3/C3 各行の.txtファイルを読み取り、最初の単語(A1、A2、A3)に基づいてディレクトリを作成するスクリプトが必要です 私はこのようなスクリプトを作成しました: file="test.txt" while IFS='' read -r line do name="line" mkdir -p $line done <"$file" 私がそれを実行している間、それはディレクトリA1を作成し、次にサブディレクトリB1とC1も作成します。同じことが別の行(A2 *およびA3 *)でも起こります A1、A2、A3ディレクトリのみを作成するにはどうすればよいですか? 「/」文字を含むA1 / B1 / C1のような名前を作りたくありません。「/」文字の前の単語を取り、それをディレクトリ名にしたいだけです。「A1」「A2」「A3」だけです。

2
一度に複数のシェルエイリアスを作成する
たとえば、catコマンドのように、さまざまなスペルのバリエーションをエイリアスに挿入したい。「または」の記号を使用してそれを行うことはできますか、それとも新しい行に置く必要がありますか? alias at|cart|cst '/bin/cat'

2
grep出力を短い行に制限する
私はしばしば次のような特定のエントリを持つファイルを見つけるためにgrepを使用します: grep -R 'MyClassName' 良い点は、ファイルとその内容を返し、見つかった文字列を赤でマークすることです。悪い点は、テキスト全体が1つの大きな1行で記述されている巨大なファイルもあることです。これらの大きなファイル内でテキストを検索すると、grepが出力しすぎます。出力を例えば左と右に5ワードに制限する方法はありますか?または、出力を左と右に30文字に制限しますか?

4
同じテキストファイル内の異なる行に表示される複数のビットの情報を抽出する方法
同じテキストファイル内の異なる行にあるシーケンスIDとクラスター番号を抽出しようとしています。 入力は次のようになります >Cluster 72 0 319aa, >O311_01007... * >Cluster 73 0 318aa, >1494_00753... * 1 318aa, >1621_00002... at 99.69% 2 318aa, >1622_00575... at 99.37% 3 318aa, >1633_00422... at 99.37% 4 318aa, >O136_00307... at 99.69% >Cluster 74 0 318aa, >O139_01028... * 1 318aa, >O142_00961... at 99.69% >Cluster 75 0 318aa, >O300_00856... …

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