最新記事

pushd popdで自動ジャンプ/zを使用する
command-line
active-directory

pushd popdで自動ジャンプ/zを使用する

自動ジャンプまたはジフルパスの一部だけを入力してファイルシステムを移動できます(たとえば、z foo次へ移動)。/long/long/path/to/foo 私はしばしば道から飛び出して何かをして戻ってきたいです。これはを使用して簡単に達成できますcd -。 しかし、パスにジャンプしてCDを回して、「戻る」をしたい場合はcd -もう機能しません。 adirから始めてにジャンプし、次にジャンプbしてcから、「return」(へb)および「return」(へa)にジャンプしようとしても機能しません。 再びジャンプしたい場所の名前を覚えておくのは楽しいことではありません(したがって、z a「ジャンプバック」に置き換えることができます)。 pushdこれはpopd、複数のディレクトリを閲覧するのに役立つように正確に作成されました。zwithpushdとの部分一致動作を統合できるかどうか疑問に思いますpopd。 または、自動ジャンプにCDを使用する代わりに、ターゲットディレクトリを提供するコマンドラインオプションがないようですz。それ以外の場合pushd $(z ...)。

Admin

複数のディレクトリの特定のファイル数を取得します。
command-line
file-search

複数のディレクトリの特定のファイル数を取得します。

私のディレクトリ構造は次のとおりです。 dir |___sub_dir1 |_____files_1 |___sub_dir2 |_____files_2 |___sub_dirN |_____files_N 各サブディレクトリには名前があってもなくてもかまいません。ディレクトリ内のファイルの総数をxyz.json見つけたいです。xyz.jsondir どうすればいいですか?

Admin

zsh:行の先頭にカーソルがある履歴
command-line
zsh

zsh:行の先頭にカーソルがある履歴

私は最近bashからzshに切り替えました。 1つの(迷惑な)違いは、コマンドライン履歴から戻るためにEsc-K(vi編集モードで)を実行するときにカーソルが終わり初期ライン。場所になってほしいです。スタート初期ライン。私が欲しいものをどのように得ることができますか?

Admin

Bashはその行のすべての内容を返し、行を空白のままにします。
text-processing
sed
command-line
command

Bashはその行のすべての内容を返し、行を空白のままにします。

テキストファイルを変更したいです。 22行にテキストがあり、22行を空白のままにして、22行のテキストを23行に移動したいとしましょう。これを説明するために()に変更したいと思いますprintf 'Some %d text\n' {1..23}。 Some 1 text Some 2 text Some 3 text Some 4 text Some 5 text Some 6 text Some 7 text Some 8 text Some 9 text Some 10 text Some 11 text Some 12 text Some 13 text Some 14 text Some 15 text Some 16 text Some 17 text Some 18 text Some 19 text Some 20 text Some 21 text Some 22 text Some 23 text 以下を入力してください: Some 1 text Some 2 text Some 3 text Some 4 text Some 5 text Some 6 text Some 7 text Some 8 text Some 9 text Some 10 text Some 11 text Some 12 text Some 13 text Some 14 text Some 15 text Some 16 text Some 17 text Some 18 text Some 19 text Some 20 text Some 21 text Some 22 text Some 23 text どうすればいいですか?

Admin

6つの異なるフレームワークでORFを見つけるスクリプトを書いてください。
command-line
regular-expression
bioinformatics

6つの異なるフレームワークでORFを見つけるスクリプトを書いてください。

基本的にシーケンスがあります。 AAAGCATATGCTAGCCCGTATAGCGATACTAGCTATACGATATATATGATCAATGCCCGTATAG シーケンス内のすべての「ORF」を見つける必要があります。 ORFは、ATGで始まり、TGA、TAA、またはTAGで終わるすべての領域です。 たとえば、上記の順序では、ORFは次のようになります。 AAAGCAT**ATGCTAG**CCCGTATAGCGATACTAGCTATACGATATAT**ATGATCAATGCCCGTATAG** 第2のORFは、ORFの内部にATGがあることが分かる。これは、終了前にTGA、TAA、またはTAGがない場合に発生します。 うん、それは基本的に問題だ。 C ++には2〜3つの方法があることを知っていますが、bashの構文についてはわかりません。 私はライブラリやPerlなどを使用することはできませんし、特別な機能もなく、grep、awk、sed、ループなどを使用することもできます。

Admin

extglob 動作、特に bash で *(patternList) を使用する場合
bash
command-line
wildcards

extglob 動作、特に bash で *(patternList) を使用する場合

extglobを使用しようとしていますが、マニュアルページを読んだ後、*(patternList)がどのように機能するのか混乱しました。次のコマンドを使用するとします。 touch A Ax Axxx Axxxx Ay X X.bak x xx xxxx ls A*(xx) A Axxxxだけを印刷するのはなぜですか? Axxxにはxxも正確に一度だけ含まれていませんか?また、Ayがxxで0回発生するので、なぜ印刷されないのですか?

Admin

Shellスクリプトを実行すると、「-exec」パラメータがありませんが、コマンドラインでは正常に実行されます。
linux
bash
shell-script
command-line
exec

Shellスクリプトを実行すると、「-exec」パラメータがありませんが、コマンドラインでは正常に実行されます。

ここにこのシェルスクリプトがあります。 ### # Create a folder dynamically mkdir archived_PA_"$(date -d "6 months ago - 1 day" +%Y-%m-%d)"_"$(date -d "1 day ago" +%Y-%m-%d)" # Move files to new folder dynamically find ./VA -newermt $(date +%Y%m%d -d '6 months ago') ! -newermt $(date +%Y%m%d -d 'today') -exec mv -t /var/log/pentaho/archived_PA_"$(date -d "6 months ago - 1 day" +%Y-%m-%d)"_"$(date -d "1 day ago" +%Y-%m-%d)" {} + # Archive dynamic folder zip -r archived_PA_"$(date -d "6 months ago - 1 day" +%Y-%m-%d)"_"$(date -d "1 day ago" +%Y-%m-%d)".zip /var/log/pentaho/archived_PA_"$(date -d "6 months ago - 1 day" +%Y-%m-%d)"_"$(date -d "1 day ago" +%Y-%m-%d)" 最初はコマンドラインからすべての行が正しく実行されますが、このコマンドを使用してこのシェルスクリプトを実行すると、./script_name.sh次のエラーが発生します。 ./HIX-170061.sh: line 4: $'\r': command not found find: missing argument to `-exec' ./HIX-170061.sh: line 7: $'\r': command not found adding: var/log/pentaho/archived_PA_2023-01-09_2023-07-09^M/ (stored 0%) つまり、別の行を実行できますが(4行目と7行目は除外しますが空白行なので重要ではないと思います)、6行目でエラーが発生しますfind: missing argument to `-exec'。

Admin

名前 - パスを検索
linux
bash
ubuntu
command-line
find

名前 - パスを検索

私には木があります。 . ├── 1 │   └── a │   └── script.a.sh ├── 2 │   └── a │   └── script.b.sh ... └── a └── script.sh 私は見つけるべきですscript.*.sh。私は以下を実行します./a/script.sh: #!/bin/bash # path="/tmp/test" readarray files < <(find ${path} -path "*/a/script.*.sh") if [ ${#files[@]} -ne 0 ] then for file in "${files[@]}" do echo ${file} done fi 出力: /tmp/test/1/a/script.a.sh /tmp/test/2/a/script.b.sh これは有効なスクリプトです! find ${path} -path "*/a" -name "script.*.sh"ただし、findコマンドをスクリプトに変更すると、何も出力されません。 私のロジックは/tmp/test/*/a/script.*.sh私が言うパターンを持つすべてのファイルを探しますfind ${path} -path "*/a" -name "script.*.sh"。 現在残っている質問は次のとおりです。 find ${path} -path "*/a" -name "script.*.sh"コマンドは実際に何をしますか? にデバッグモードがありますかfind?私の言葉は、私が何を言っているのかを理解する方法を意味します(例:検索するパス、no find . -name "*te.st*"、just ./*/*te.st*)。 -name、同じコマンドライン(必要なケース、はい、説明)にありますか-path?それとも相互排他的ですか?それとも-path拡張バージョンと言えますか-name? manはい、はい、およびを使用できますgoogle。また、これらのソースからすべての質問に対する完全な答えが見つかりませんでした。

Admin

複数のファイルを処理するときに、各入力ファイルの出力を別々のファイルにリダイレクトできますか?
command-line
io-redirection
wildcards

複数のファイルを処理するときに、各入力ファイルの出力を別々のファイルにリダイレクトできますか?

私は次のようなことをします: % command *bin > log.txt *ba.bin、、、b.binに展開しますc.bin。 log.txt各ファイルの標準出力が別々のファイル(またはa.txt、b.txt、c.txt)で終わります。どうすればいいですか? 検索して1つのファイル(例)を処理して複数のログファイルを生成する方法に関する多くの質問がありましたが、私の$ command a.bin > log1.txt log2.txt log3.txt場合は該当するものはありません(明らかに存在しますが、括弧内のケースの状況などの質問に陥っています) 。

Admin

Ctrl + uとカールを使用して別のHTMLページを取得します。
command-line
curl

Ctrl + uとカールを使用して別のHTMLページを取得します。

このページにアクセスすると(https://imgur.com/user/Ultraruben/subscribed例)を押して を押すとCtrl+uウェブページが表示されます。コマンドラインからhtmlを抽出しようとすると、他の結果がcurl 表示さcurl -L れます。 lynx -dump (JavaScriptなし)は動作しません。 ブラウザを使用するのと同じように(操作するツールを使用して)コマンドラインを介して実行する必要がありますCtrl+u。 Opera ブラウザで取得した内容は次のとおりです。https://justpaste.it/42ci1 カールを使用すると、これが発生します。https://justpaste.it/9oy3g

Admin

切り捨てられた長いコマンドラインオプションを許可するのはなぜですか?
command-line
options
user-experience

切り捨てられた長いコマンドラインオプションを許可するのはなぜですか?

多くのコマンドラインユーティリティは長い([1]によると「GNUスタイル」)オプションを受け入れます--version。驚くべきことに、切り捨てられたバージョンは完全なオプションとして解釈されることがよくあります。たとえば、dfGNU Coreutils は以下を提供します。 user@computer ~ $ df --version df (GNU coreutils) 8.32 Packaged by Gentoo (8.32-r1 (p0)) Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Torbjorn Granlund, David MacKenzie, and Paul Eggert. --version--v切り捨てバリアント、、、およびを--ve変更すると、--ver同じ出力が得られます。ただし、オプションに文字を追加すると、突然そのオプションが無効であることが認識されます。--vers--versi--versio user@computer ~ $ df --versionn df: unrecognized option '--versionn' Try 'df --help' for more information. この動作は意図的なものですか?その理由は何ですか?私の理解は、ほとんどのユーティリティが(または同様の)依存しているということですgetopts。getoptだからマンページで手がかりを見つけましたが、説明が見つかりませんでした。 [1] ESレーモンド。UNIXプログラミングの技術。ピアソン教育、Inc.、2004

Admin