最新記事

以下に例を示します。
shell-script
shell
sed
tcsh
csh

以下に例を示します。

UnixとSed初心者はここにあります! 要件があり、サフィックスを追加する必要があります。「あきらめる」レポートの行に一致する文字列が含まれている場合。一致する文字列が他のファイルの一部です。「放棄.txt」。私はまた、主要なレポートのコピーについてこれらのことを行ってみました。 以下に例を示します。 レポートは次のとおりです。 i love apple_tart as a desert banana is full of potassium and iron there are so many helath benefits of apple eating the king of fruit is mango there are apple_pie of many variety これが方法ですあきらめるtxt良い: apple_pie banana これは同じファイルから私が望む期待される出力です。 i love apple_tart as a desert banana is full of potassium and iron,waive there are so many helath benefits of apple eating the king of fruit is mango there are apple_pie of many variety,waive 私が試したスクリプトは次のとおりです。無効な変数名 間違い #!/bin/csh -f if (-r fruits_bkup.txt) then rm fruits_bkup.txt endif yes|cp fruits.txt fruits_bkup.txt foreach word ("`cat waiver.txt`") sed -i "/${word}/s/$/ ,waived/" fruits_bkup.txt end sedコマンドで二重引用符を一重引用符に置き換えると、レポートに何の変更もありません。 ありがとうございます! 私は期待した: i love apple_tart as a desert banana is full of potassium and iron,waive there are so many helath benefits of apple eating the king of fruit is mango there are apple_pie of many variety,waive 得る: 無効な変数名 間違い

Admin

git Branch -r出力からブランチ名を取得する方法
shell
awk
sed
cut

git Branch -r出力からブランチ名を取得する方法

これにより、git branch -rすべての行にリモート名が接頭辞で付けられるようです。 $ git --no-pager branch -r origin/feature/XXX-NNN origin/feature/XXX-NNN origin/feature/XXX-NNN $ feature/.+コマンドラインを使用してこれらの部分をどのように取得できますか? だから何かしたいのですが、 feature/XXX-1 feature/XXX-243

Admin

特定のファイルをgrepし、その特定のファイルをコピーします。
linux
shell-script
shell

特定のファイルをgrepし、その特定のファイルをコピーします。

これは私のファイルで、出力は次のようになります。ll | awk '{print $9}' thread_dump_10-10-22_10:00:01* thread_dump_10-10-22_10:05:01* thread_dump_10-10-22_10:10:01* thread_dump_10-10-22_10:15:01* thread_dump_10-10-22_10:20:01* thread_dump_10-10-22_10:25:01* thread_dump_10-10-22_10:30:01* thread_dump_10-10-22_10:35:01* thread_dump_10-10-22_10:40:01* thread_dump_10-10-22_10:45:01* thread_dump_10-10-22_10:50:01* thread_dump_10-10-22_10:55:01* thread_dump_10-10-22_11:00:01* thread_dump_10-10-22_11:05:01* thread_dump_10-10-22_11:10:01* thread_dump_10-10-22_11:15:01* thread_dump_10-10-22_11:20:01* thread_dump_10-10-22_11:25:01* thread_dump_10-10-22_11:30:01* thread_dump_10-10-22_11:35:01* thread_dump_10-10-22_11:40:01* thread_dump_10-10-22_11:45:01* thread_dump_10-10-22_11:50:01* thread_dump_10-10-22_11:55:01* thread_dump_10-10-22_12:00:01* thread_dump_10-10-22_12:05:01* thread_dump_10-10-22_12:10:01* thread_dump_10-10-22_12:15:01* thread_dump_10-10-22_12:20:01* thread_dump_10-10-22_12:25:01* thread_dump_10-10-22_12:30:01* thread_dump_10-10-22_12:35:01* thread_dump_10-10-22_12:40:01* thread_dump_10-10-22_12:45:01* thread_dump_10-10-22_12:50:01* thread_dump_10-10-22_12:55:01* 私の問題は、11時30分から12時30分の間にファイルを特定のフォルダにコピーすることです。ソース:/home/Downloads/thread_dumps宛先:/home/test

Admin

sudoで実行されるbashスクリプトを作成している場合は、ユーザーシェルに滞在させるにはどうすればよいですか?
linux
bash
shell

sudoで実行されるbashスクリプトを作成している場合は、ユーザーシェルに滞在させるにはどうすればよいですか?

私はリポジトリのインストールを処理するためのbashスクリプトを書いています。主にいくつかの基本的な依存関係をチェックし、git cloneを頻繁に呼び出します。 このスクリプトを実行するときにファイルがインストールされていることを確認したいと思います。 git clone https://github.com/reticulatedpines/magiclantern_simplified.git echo "Exit status: ($?)" if [ $? -eq 0 ]; then echo "Magic Lantern has been cloned into ${ML_PATH}." else exit 1 fi 問題は、リポジトリが現在の作業ディレクトリに複製されることです。これは私が望むものではありません。cd ~ホームディレクトリに戻ろうとすると、実際にはルートシェルに送信されます。 root@debian:~# (repository installs here). これをどのように避けることができますか?

Admin

Debian パッケージからインストールされた git バイナリ
debian
shell
git

Debian パッケージからインストールされた git バイナリ

Debian 10にgitをインストールしました。 2つの異なる場所に2つの同じgitバイナリがあるのはなぜですか? /usr/lib/git-core/git /usr/bin/git これらは同じsha256sumを持つ同じファイルです。しかし、それらはハードリンクではありません。 2 つのコピーに存在する同じファイルです。 不思議ですね。目的が何なのか気になります。

Admin

Centos 7では、エイリアスは機能しません。
bash
shell-script
shell

Centos 7では、エイリアスは機能しません。

checkmk MRPEプラグインを使用して監督のカスタム監視を設定しようとしています。チェック(bashシェルスクリプト)はシェルの内部ではうまく機能しますが、外部Telnetでは出力を取得できません。 問題は、管理者パスワードの割り当てに関連するユーザーエイリアスのようですが、機能しません。したがって、出力が正しくありません。 シェルスクリプトと/ etc / profileにエイリアスを追加しましたが、checkmkエージェントはまだそれを正しく呼び出しません。 私が何を見逃しているのか知っていますか? #!/bin/bash shopt -s expand_aliases alias hammer='hammer -u admin -p XXXXXXXXXXX' STATE_OK=0 STATE_CRITICAL=2 STATUS=`hammer capsule content synchronization-status --id 11|grep Status:|grep "Capsule is synchronized"` RET_VAL=$? if [ "$RET_VAL" != "0" ] then ERR_STATUS=`hammer capsule content synchronization-status --id 11|grep -i status|cut -d ":" -f 3` echo "$ERR_STATUS needs to be synced." exit $STATE_CRITICAL else echo "Capsule is synchronized." exit $STATE_OK fi

Admin

テキストに一致する行を印刷し、次の行を印刷してから、次の行の他のテキストと再一致するすべての操作をすべてテキストファイルでどのように実行しますか?
shell
text-processing

テキストに一致する行を印刷し、次の行を印刷してから、次の行の他のテキストと再一致するすべての操作をすべてテキストファイルでどのように実行しますか?

Tor出口ノード(TorはIPv6アドレスの明示的な選択を許可しないため、IPではない)のフィンガープリントを取得し、IPv6接続を持つTor出口ノードのリストを作成したいと思います。 Torのテキストファイルには次の行があります。 a [2602:fc05::223]:443 m zBBa795v7+KnW1qZP1pK0ZBtxRHQfhHlkJpe/Yh9ok8 s Exit Fast HSDir Running Stable V2Dir Valid 私がしたいのは、次のようなテキストファイルのすべての行を印刷することです。'['(IPv6アドレスを表します)次の行(Tor出口ノードの指紋がある行)を印刷し、テキストを含む次の行と再一致します。「やめる」(すべての出口ノードを選択してください)。上記のようにライン印刷に使用されます。 どうすればいいですか?

Admin

曜日、月、年の名前付き日付を検索する方法
linux
bash
shell-script
shell
date

曜日、月、年の名前付き日付を検索する方法

を使用して最後の月曜日を見つけることができますが、date -d 'last-monday' +%F曜日名、月の週、年が与えられたら、日付をどのように知ることができますか? たとえば、次のようになります。Monday, Week 4, June, 2022 出力:2022-06-20 与えられた:Friday, Week 1, July, 2022 出力:2022-07-01

Admin

シェルプロンプトからLaTeXを出力できますか?
shell
prompt
latex

シェルプロンプトからLaTeXを出力できますか?

いくつかの「lambda」プロンプト(つまり、$ \ lambda $表記を使用するシェルプロンプト)があります。理論的には良く見えますが、多くのフォントは私のお気に入りのラムダ記号$ \ lambdaup $を使用しません。コンパイルされたLaTeXをシェルプロンプト(fish、zshなど)に含めることができるかどうかはわかりませんが、可能であれば誰でも方法を教えてください。 Unix Stack ExchangeはLaTeXをレンダリングしていないことがわかりましたが、簡単なGoogle検索で私が何を意味するのかがわかりました。

Admin

この xargs マルチコマンドで括弧を処理します。
bash
shell
xargs
escape-characters

この xargs マルチコマンドで括弧を処理します。

次の質問にはすでに回答があるようですが、質問の用語を知らず、既存の回答を見つけるのに十分です。 私はファイルのリストを繰り返し、各行にファイル名とPで始まる行数を出力するコマンドを書いています。これまで私は以下を持っています: find -type f | xargs -I % sh -c '{ echo %; grep -P "^P \d+" % | wc -l; } | tr "\n" ","; echo ""; ' (実際のfindコマンドはもう少し複雑ですが、簡単に言えば、このコマンドを実行したディレクトリツリーで約11,000個の関心ファイルを見つけました。) このコマンドは私の目的に対して約98%動作しますが、名前に角かっこを持つファイルの少数があることがわかりました。 その結果、以下の事例を受けました。 sh: -c: line 0: syntax error near unexpected token `(' 括弧はシェル特殊文字であることがわかります。たとえば、名前に括弧を含む単一のファイルに対してgrepを直接実行する場合は、ファイル名を一重引用符で囲むか、括弧をエスケープする必要があります。 grep呼び出しで一重引用符の中に「%」を入れることができるように、コマンドで引用符の種類(一番外側の二重引用符、内側の一重引用符)を置き換えようとしましたが、役に立ちませんでした。 find -> xargs -> shsh呼び出しで括弧が正しく処理されるようにチェーンの括弧を処理する方法はありますか?

Admin

シェルスクリプトで1つのコマンドに複数の入力を指定する方法
shell
read

シェルスクリプトで1つのコマンドに複数の入力を指定する方法

サンプルごとに複数のfastqファイルがあり、すべて一度に入力として提供する必要があります。 (すべて1つのサンプルに属するため、forループのように独立して処理しないでください。1つのサンプルに入力されるため、一緒にする必要があります。)。 これは簡単な例です。 s1サンプルには3つのfastqファイルしかありません。 NanoPlot -t 2 --fastq s1.reads1.fastq.gz s1.reads2.fastq.gz s1.reads3.fastq.g --maxlength 40000 --plots hex dot ここで、s1に100を超えるfastqファイルがあるとします。このファイルをすべて入力として使用するようにコマンドを変更するにはどうすればよいですか?

Admin