最新記事

次のログエントリが前のログエントリより1分以上遅れて発生した回数を計算します。
shell-script
grep
logs

次のログエントリが前のログエントリより1分以上遅れて発生した回数を計算します。

日付、時刻(時、分、秒、ミリ秒)、車速、車と私たちの車の前後の車との間の自由距離を記録するログファイルがあります。車両が停止している場合は距離を測定しません。 私のselfdriving.logファイルは次のとおりです。 2021.04.01. 13:14:30:78 78 110 110 2021.04.01. 13:14:30:99 79 111 111 2021.04.01. 13:14:31:50 80 111 119 2021.04.01. 13:14:59:87 87 118 117 2021.04.01. 13:16:59:87 86 116 119 2021.04.01. 13:17:22:32 75 117 115 2021.04.01. 13:18:50:65 75 96 109 2021.04.01. 13:18:55:00 0 0 0 私が望むのは、最後のログエントリから1分以上後にログエントリが生成された回数を返すスクリプトを書くことです。したがって、私の計算が正しい場合は、2この場合に返す必要があります。grepどのように機能し、戻り値を変数に入れるのかわかりません。これまで私は次のことを試しました。 #!/bin/sh for i in "cat selfdriving.log" do grep (([01][0-9])|(2[0-3])):[0-5][0-9]:[0-5][0-9]:[0-9][0-9] done 私の知る限り、評価は高くありません。

Admin

二重引用符と一重引用符の間の変数置換を使用する Grep パターン
grep
quoting
variable-substitution
pattern-matching

二重引用符と一重引用符の間の変数置換を使用する Grep パターン

それでは、次のスキーマがあるとしましょう。 Thisisatest="1" file. マッチしたい精密上記の文字列しかし、何らかの理由で、リストのいくつかの数値を繰り返し変数として使用し、次のことを行うことにしました。 Thisisatest="$varhere" ここで、上記の数字$varhereは上記の数字と同じです1。 (屋根数字に言及しましたが、これ可能な将来のユースケースであり、まだ例です) それでは、作業をより簡単にするために上記の内容と一致させたいとしましょう。精密模様しかし、上記の変数とその内容を使用して: grep 'Thisisatest="$varhere"' file ファイルに文字列Thisisatest="1"と$varhere数字が含まれています1。 問題は、これがうまくいかないことです。なぜなら一重引用符の間に変数の拡張はありません(上記の図を参照)。 以下は、これに反論しようとする失敗した試みです。 変数交換用のコンテンツ交換 echo "${varhere/[0-9]*/Thisisatest=\"$varhere\"}" echoここでは、出力が次のようになっていることを確認するために使用されます。正しい文字列なので、grep...への入力として使用でき、次のように出力します。 'Thisisatest="'1'" より多くの引用符を追加 echo "'Thisisatest="${varhere}"'" 出力: 'Thisisatest='1'' echo ''''Thisisatest=\"${varhere}\"'''' 出力: Thisisatest="'1'" 残りははっきりしています...今、最後の試みは私が望むものに近いようですが、それでもそうではありません。 上記のようにする方法はありますか?

Admin

ps -xフラグは特定のバージョンのLinuxではサポートされていません。
linux
command-line
grep
ps

ps -xフラグは特定のバージョンのLinuxではサポートされていません。

私のpsコマンドは、以下のようにLinuxの特定のバージョンを除いて動作します。 [root@failinghost ~]# ps -xef | grep -v grep | grep websphere Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ [root@failinghost ~]# ps -version ERROR: Unsupported SysV option. ********* simple selection *********  ********* selection by list ********* -A all processes                      -C by command name -N negate selection                   -G by real group ID (supports names) -a all w/ tty except session leaders  -U by real user ID (supports names) -d all except session leaders         -g by session OR by effective group name -e all processes                      -p by process ID                                       -q by process ID (unsorted & quick) T  all processes on this terminal     -s processes in the sessions given a  all w/ tty, including other users  -t by tty g  OBSOLETE -- DO NOT USE             -u by effective user ID (supports names) r  only running processes             U  processes for specified users x  processes w/o controlling ttys     t  by tty *********** output format **********  *********** long options *********** -o,o user-defined  -f full            --Group --User --pid --cols --ppid -j,j job control   s  signal          --group --user --sid --rows --info -O,O preloaded -o  v  virtual memory  --cumulative --format --deselect -l,l long          u  user-oriented   --sort --tty --forest --version -F   extra full    X  registers       --heading --no-heading --context                                       --quick-pid                     ********* misc options ********* -V,V  show version      L  list format codes  f  ASCII art forest -m,m,-L,-T,H  threads   S  children in sum    -y change -l format -M,Z  security data     c  true command name  -c scheduling class -w,w  wide output       n  numeric WCHAN,UID  -H process hierarchy [root@failinghost ~]# ps -V procps version 3.2.8 [root@failinghost ~]# uname -a Linux failinghost 2.6.32-754.28.1.el6.x86_64 #1 SMP Fri Jan 31 06:05:42 EST 2020 x86_64 x86_64 x86_64 GNU/Linux 以下は別のLinuxホストです。幸いなことに、エラーは発生しません。 [root@workinghost ~]$ ps -xef | grep -v grep | grep websphere [root@workinghost ~]$ echo $? 1 [root@workinghost ~]$ uname -a Linux workinghost 3.10.0-1062.1.2.el7.x86_64 #1 SMP Mon Sep 16 14:19:51 EDT 2019 x86_64 x86_64 x86_64 GNU/Linux [root@workinghost ~]$ ps -V procps-ng version 3.3.10 私のpsコマンドがSolaris以外のすべてのシステムで動作したいと思います。 両方のLinuxバージョンで動作するソリューションを提案できますか?

Admin

互換性テスト:
grep

互換性テスト:

5000ファイルの最初の列に特定の文字列を含む行を取得したいと思います。 ファイル1 agd fkg fls ofk ggs kkg ikg gkl bsg ksf olg lzj many more lines,,, kgf kkg ikg lgk ファイル2 gik zlg olg pzk ppl sjg gol dzj zjg iwj bmh hgi many more lines,,, kgf wlg ugk lkf より多くのファイルがあります。 結果ファイル kgf kkg ikg lgk kgf wlg ugk lkf more lines... この場合、「kgf」など、最初の列が特定の文字列である各ファイルから行を取得したいと思います。 1つのファイルからデータをインポートする方法はわかっていますが、複数のファイルからデータをインポートする方法はわかりません。誰かが私に教えることができますか?

Admin

既知の場所の非常に大きなファイルから複数行を抽出する方法は? [閉鎖]
grep
xml

既知の場所の非常に大きなファイルから複数行を抽出する方法は? [閉鎖]

閉鎖。この質問には詳細または明確性。現時点では回答は許可されていません。 この質問を改善したいですか?詳細を追加して質問を明確にしてください。この記事を編集してください。 閉鎖4年前。 この問題を改善する 重量が500Mbに達する巨大な.xmlファイルがありますが、grepできる既知の場所から始めていくつかのテキストを抽出したいと思います。 grep の場合、キーワードが表示される場所は表示されますが、行番号は表示されません。最初のgrepから200行を抽出する必要がある場合はどうなりますか?

Admin

shell-initが発生する理由:egrepを使用すると、現在のディレクターの検索中にエラーが発生する
linux
bash
shell-script
grep

shell-initが発生する理由:egrepを使用すると、現在のディレクターの検索中にエラーが発生する

変数からいくつかの名前を除外したいです。 # echo $names abba begiz altonzon music aolala # echo $names | grep -o '[^[:space:]]\+' abba begiz altonzon music aolala egrep以下を使用してこれら2つの名前を除外すると、 その後、次の例外が発生します。"shell-init: error retrieving current directory:" # echo $names | grep -o '[^[:space:]]\+' | egrep -iv "abba|begiz" shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory altonzon music aolala この例外を回避する方法は?

Admin

findコマンドの-execで2つのbashコマンドを使用する方法は? GREPによる
grep
find
exec

findコマンドの-execで2つのbashコマンドを使用する方法は? GREPによる

私も同じことをしたいfindコマンドの-execで2つのbashコマンドを使用する方法は?ただし、2番目のコマンドとしてgrepを使用してください。以前のソリューションに公開されたソリューションは、grepが2番目のコマンドの場合は機能しません。別の問題exec オプションと find コマンドと grep コマンドの組み合わせgrepの使用について質問しましたが、すべての答えはgrepを使用しません。私の考えではgrepをしなければならないと思います。 例えば、 sudo find -D exec . -maxdepth 1 -type f -iname "*" -exec file -N '{}' \; -exec echo 'asdf' \; うまくいきますが、 sudo find -D exec . -maxdepth 1 -type f -iname "*" -exec file -N '{}' \; -exec grep "JPEG" {} \; grepが何かをするという証拠はありません。最初のコマンドの標準出力をgrepの標準入力に強制するにはどうすればよいですか?代わりに、ファイルコマンドの出力をファイルにパイプし、そのファイルに対してのみgrepを実行すると正常に動作します。 dell@DELL-E6440:~$ rm junk.txt dell@DELL-E6440:~$ sudo find -D exec . -maxdepth 1 -type f -iname "*" -exec file -N '{}' >> junk.txt \; dell@DELL-E6440:~$ grep "JPEG" junk.txt ./150120-ssc-proxy~20190508-061623.jpg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 150x150, segment length 16, baseline, precision 8, 1018x1426, frames 3 ./avoid-powered-overfight~20190508-061623.jpg: JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, comment: "Intel(R) JPEG Library, version [2.0.16.48]", baseline, precision 8, 1048x659, frames 3 dell@DELL-E6440:~$ しかし、要点は、単一のbash行でこれを実行したいと思います>>は、とにかく実行の間にファイルを適切に更新できないことです。

Admin

なぜこの単語はgrepになることができないのですか?
linux
grep
less
busybox

なぜこの単語はgrepになることができないのですか?

私はbusybox、vにのみアクセスできます1.27。 PDF文書から抽出した大容量TXTファイルをTXT辞書として使用して、コンソールに優しく作成しようとしています。私が得たい単語は行の最初の単語です。次に、定義が続きます。 Word I'm grepping for: patético 私が使っている裏地はこんな感じです。 cat ./rae.txt | grep '^patético' cat私が探している単語をより速く効率的に削除できるために利用されています。行の最後の部分(用語)を削除し、いくつかのキーストロークを保存するだけです。 ほとんどの場合、私が検索する単語の定義を取得します(例:)anhelo。 $ grep -e '^anhelo' ./rae.txt anhelo. (Del lat. anhelus). 1. m. Deseo vehemente. anheloso, sa. (Del lat. anhelosus). 1. adj. Que tiene o siente anhelo. Anhelosos de con- cluir. 2. adj. Propio de lo que muestra anhelo. Mirada, búsqueda anhelosa. 3. adj. Dicho de la respiración: Frecuente y fatigosa. 4. adj. desus. Que respira de este modo. ご覧のとおり、各行には定義anheloとがありますanheloso。 まず、問題は単語の後ろのドットやコンマにあるようです.。これは、プレーンテキストではなく特殊文字に拡張または解釈されるようです。,しかしそれは真実ではない。 私の質問は次のとおりです なぜgrepができないのです^patéticoか? なぜこれがうまくいかないのですか? grep -e '^patético' ./rae.txt 私が実行しているテキストgrepは次のとおりです。 patería. 1. f. coloq. Chile y Perú. Muestra ocasional y fingida de amistad. paternal. (De paterno). 1. adj. Propio del afecto, cariño o solicitud de padre. paternalismo. 1. m. Tendencia a aplicar las formas de autoridad y protección propias del padre en la familia tradicional a relaciones sociales de otro tipo; políticas, laborales, etc. U. m. en sent. peyor. paternalista. 1. adj. Dicho de una persona: Que adopta el paternalismo como forma de conducta. U. t. c. s. 2. adj. Que responde o parece responder a dicha actitud. paternalmente. 1. adv. m. De modo propio o digno de un padre. paternidad. (Del lat. paternitas, -atis). 1. f. Cualidad de padre. 2. f. Tratamiento que en algunas órdenes dan los religiosos inferiores a los padres condecorados de su orden, y que los seculares dan por reverencia a todos los religiosos en general, considerándolos como padres espirituales. paterno, na. (Del lat. paternus). 1. adj. Perteneciente o relativo al padre. 2. adj. Propio del padre. 3. adj. Derivado de él. V. casa paterna paternóster. (Del lat. Pater noster, Padre nuestro, palabras con que principia la oración dominical). 1. m. Oración del padrenuestro. 2. m. Padrenuestro que se dice en la misa, y es una de las partes de ella. 3. m. Cada uno de los aditamentos de alambre que se adaptan al chambel para aumentarle su capacidad de pesca. 4. m. Chambel ya preparado con estos artilugios. 5. m. coloq. Nudo gordo y muy apretado. patero, ra. (De pato1). 1. adj. Chile y Perú. Adulador, lisonjeador. U. t. c. s. 2. m. Cazador de patos salvajes. pateta. (De pata1). 1. m. coloq. diablo (|| príncipe de los ángeles rebelados). Ya se lo llevó pateta. No lo hiciera pateta. 2. m. coloq. Persona que tiene un vicio en la conformación de los pies o de las piernas. 3. m. pl. u. c. sing. Méx. diablo (|| príncipe de los ángeles rebela- dos). EL patetas. patéticamente. 1. adv. m. De modo patético. patético, ca. (Del lat. patheticus, y este del gr. o, que impresiona, sensible). 1. adj. Que es capaz de mover y agitar el ánimo infundiéndole afectos vehementes, y con particularidad dolor, tristeza o melancolía. patetismo. 1. m. Cualidad de patético. patí. (De or. guar.). 1. m. Arg. y Ur. Pez grande de río, de color gris azulado con man- chas oscuras. 2. m. C. Rica. Especie de empanada rellena de carne o papas. -patía. (Del lat. -pathia, y este del gr. a, de la raíz -, sufrir, experimentar). 1. elem. com- pos. Significa 'sentimiento', 'afección' o 'dolencia'. Homeopatía, telepatía. patiabierto, ta. (De pata1 y abierto). 1. adj. coloq. Que tiene las piernas torcidas e irreg- ulares, y separadas una de otra. ちなみに、この言葉はただpatéticoすべての言葉ではありません。私のシステムはUTF-8をサポートしておらず、言語パックもインストールされていません。文字は単なるバイトの流れなので、これは問題ではないと思いますが、表示されない単語を検索するために使用すると問題はありません。tildeélessgrep 編集0 ロケール LANG=C LC_CTYPE="C" LC_NUMERIC="C" LC_TIME="C" LC_COLLATE="C" LC_MONETARY="C" LC_MESSAGES="C" LC_PAPER="C" LC_NAME="C" LC_ADDRESS="C" LC_TELEPHONE="C" LC_MEASUREMENT="C" LC_IDENTIFICATION="C" LC_ALL= ファイル-irae.txt rae.txt: text/plain; charset=utf-8 編集1 コンソールコードページ C POSIX ANSI_X3.110-1983 ANSI_X3.4-1968 ISO-8859-1 ISO-8859-15 ISO-8859-2 編集2 処理したrae.txt後iconvISO8859-1 ./rae-iso88591.txt: text/plain; charset=iso-8859-1

Admin

Bashでファイルを見つけ、パターンを印刷ファイル名と一致させます。
bash
grep
find
pattern-matching

Bashでファイルを見つけ、パターンを印刷ファイル名と一致させます。

一致するパターンを一覧表示ptrnし、リストの前にファイル名を印刷する次のコードがあります(コンテキストオプションを使用-C NUM)。 find "$fdir" "${isufx[*]}" -type f -exec bash -c \ "grep --color -l '$ptrn' '{}'; grep --color -ni ${ictx[*]} '$ptrn' '{}'" \; モンスターという点には同意します。通話を削除することにしました。bash -c結果は次のとおりです。 OFS=$IFS IFS=$'\n' for f in $(find "$fdir" ${isufx[*]} -type f); do grep -l "$ptrn" "$f" && grep -ni ${ictx[*]} "$ptrn" "$f" done IFS=$OFS 上記の提案はありますか?ファイル名の上と下に空白行を使用して、および==>間に囲まれたリストの前にファイル名を印刷したいと思います。<== 屋根の出力防止の提案の後、次のような結果findが出ました。 find "$fdir" ${isufx[*]} -type f | while read f; do grep -l "$ptrn" "$f" && grep -ni ${ictx[*]} "$ptrn" "$f" done

Admin

grep
regular-expression

"^[0-9]+.+[0-9]$"(R) の意味

(これがRプログラミングです) 次のサンプルの質問を参照できます。 dates <- c("12/15/10", "12-2012", "12.2014", "1995") grep(pattern = "^[0-9]+.+[0-9]$", x = dates) 助けてくれてありがとう! !

Admin

PTRレコードとドメイン+ TLD一致でgrep
bash
awk
grep

PTRレコードとドメイン+ TLD一致でgrep

hostIPコマンドを実行した後、リストにドメイン+ TLDがあることを確認しようとしています。 私のスクリプトは次のとおりです while read ip; do PTR=$(host $ip | rev | cut -d" " -f1 | rev | sed 's/\.$//') if grep -q "$PTR" list.txt then echo "Match in list" else echo "No match in list" fi done

Admin