最新記事

sed コマンドを使用して追加
linux
sed

sed コマンドを使用して追加

txtファイルがあり、次の時点でsedコマンドを使用したいと思います。 ファイルの最初の5曲については、曲名を大文字に変更します。私の解決策は次のとおりです cat file.txt | sed -r 's/.*/\U&/' 「Font1」を含む行の場合は、「太字」行を追加します。私の解決策は次のとおりです cat file.txt | sed 'Font1 a\ is bold' どういう意味なのかご理解いただきありがとうございます。

Admin

スラッシュとコンマの間(含む)の間のすべてのテキストを削除します。
sed
regular-expression
cut

スラッシュとコンマの間(含む)の間のすべてのテキストを削除します。

同様のレイアウトの何千もの文字列を含む.txt文書があり、一部の行には望ましくない追加情報が含まれています。 例は次のとおりです。 202212_08,ABC123/A1234,AB,,C123 202212_08,CDEF1233/A5678,FG,,C345 出力が次のようになります。 20221208,ABC123,C123 20221208,CDEF1233,C344 正規表現を試しましたが、エラーが発生し続け、出力が空です。ご協力ありがとうございます。

Admin

リスト内の特定のテキストを大文字に変換するには?
linux
text-processing
awk
sed

リスト内の特定のテキストを大文字に変換するには?

United""で始まる国のすべてのドライバ名を大文字で書きたいと思います。 たとえば、 ~から 20 [United Kingdom] Nigel Mansell 188 31 到着 20 [United Kingdom] NIGEL MANSELL 188 31 私が使用するコマンドは次のとおりです。 cat f1.txt | sed -r 's/[^ ]"United"\s+[A-Z]+[a-z]*]\s+[A-Z]+[a-z]*\s+[A-Z]+[a-z]*-?[A-Z]?+[a-z]?*/\U&/g' 完全なリスト: Rank Country Driver Races Wins 1 [United Kingdom] Lewis Hamilton 264 94 3 [Spain] Fernando Alonso 311 32 8 [United Kingdom] Jenson Button 306 15 11 [Netherlands] Max Verstappen 116 9 17 [United Kingdom] David Coulthard 246 13 20 [United Kingdom] Nigel Mansell 188 31 26 [United Kingdom] Jackie Stewart 100 27 27 [United Kingdom] Damon Hill 115 22 28 [Spain] Carlos Sainz Jr. 115 0 32 [United Kingdom] Graham Hill 177 14 37 [United Kingdom] Jim Clark 72 25 38 [Poland] Robert Kubica 97 1 41 [South Africa] Jody Scheckter 112 10 42 [New Zealand] Denny Hulme 112 8 47 [Switzerland] Clay Regazzoni 131 5 49 [Sweden] Ronnie Peterson 123 10 50 [New Zealand] Bruce McLaren 102 4 51 [Russian Federation] Daniil Kvyat 107 0 52 [United Kingdom] Eddie Irvine 147 4 54 [United Kingdom] Stirling Moss 72 16 58 [United Kingdom] John Surtees 111 6 59 [United States] Mario Andretti 128 12 60 [United Kingdom] James Hunt 92 10 63 [United Kingdom] John Watson 152 5 64 [Thailand] Alexander Albon 35 0 69 [United States] Dan Gurney 86 4 71 [United Kingdom] Mike Hawthorn 48 3 76 [United Kingdom] Lando Norris 35 0 78 [United Kingdom] Paul di Resta 59 0 80 [United States] Richie Ginther 52 1 85 [United States] Phil Hill 51 3 86 [United Kingdom] Martin Brundle 158 0 87 [United Kingdom] Johnny Herbert 161 3 89 [Sweden] Stefan Johansson 79 0 90 [New Zealand] Chris Amon 97 0 94 [United Kingdom] Tony Brooks 41 6 95 [Venezuela] Pastor Maldonado 95 1 99 [United Kingdom] Derek Warwick 147 0 100 [United States] Eddie Cheever 132 0 101 [Switzerland] Jo Siffert 97 2 103 [Russian Federation] Vitaly Petrov 57 0 104 [United Kingdom] Peter Revson 30 2 113 [United Kingdom] Peter Collins 36 3 114 [United Kingdom] Innes Ireland 52 1 119 [Sweden] Jo Bonnier 106 1 120 [Spain] Pedro de la Rosa 105 0 124 [United Kingdom] Mark Blundell 61 0 125 [United States] Harry Schell 63 0 127 [Sweden] Gunnar Nilsson 31 1 128 [Spain] Jaime Alguersuari 46 0 130 [United States] Jim Rathmann 12 1 132 [United Kingdom] Mike Hailwood 51 0 133 [Switzerland] Sebastien Buemi 55 0 135 [United Kingdom] Mike Spence 36 0 136 [South Africa] Tony Maggs 26 0 140 [United States] Masten Gregory 40 0 142 [United States] Sam Hanks 9 1 143 [United Kingdom] Piers Courage 27 0 145 [United States] Bill Vukovich 5 2 147 [United Kingdom] Tom Pryce 42 0 148 [United Kingdom] Roy Salvadori 48 0 149 [United States] Jimmy Bryan 9 1 153 [Sweden] Marcus Ericsson 97 0 159 [Switzerland] Marc Surer 82 0 160 [Netherlands] Jos Verstappen 106 0 161 [United Kingdom] Stuart Lewis-Evans 14 0 167 [United Kingdom] Mike Parkes 6 0 168 [United States] Rodger Ward 12 1 174 [United Kingdom] Jonathan Palmer 84 0 176 [Sweden] Reine Wisell 23 0 179 [United Kingdom] Jackie Oliver 50 0 180 [United States] Johnnie Parsons 10 1 181 [United Kingdom] Peter Arundell 13 0 185 [United States] Tony Bettenhausen 13 0 186 [United Kingdom] Cliff Allison 16 0 187 [United Kingdom] Richard Attwood 17 0 188 [United Kingdom] Peter Gethin 30 1 191 [Switzerland] Rudi Fischer 7 0 192 [United States] Johnny Thomson 9 0 194 [New Zealand] Howden Ganley 36 0 199 [United States] Troy Ruttman 8 1 200 [United States] Lee Wallard 2 1

Admin

sedとwcをawkに置き換える方法は? (ディレクトリの名前の計算)
awk
sed
wc

sedとwcをawkに置き換える方法は? (ディレクトリの名前の計算)

フォルダ内の要素数を計算したいです。私はそれについて考えた function lsc { /bin/ls -l $1 | sed 1d | wc -l } しかし、私は人々がこれらのパイプを減らし、余分なものをawk取り除いている方法を思い出しました。それで、あなたは何をしますか?grepsedawk

Admin

awkまたはsedを使用して同じフィールドがある場合、連続レコードを削除する方法は?
text-processing
awk
sed
perl

awkまたはsedを使用して同じフィールドがある場合、連続レコードを削除する方法は?

こんにちは、同じ番号を含む行を削除したいと思います。 awk、sed、またはperlでどのようにこれを達成できますか?たとえば、行4と5には両方とも12.7が含まれているので、これら2つの行を削除したいと思います。ありがとうございます。 入力サンプル start=0.1 end=2.5 start=8.7 end=12.7 start=12.7 end=16.7 start=16.7 end=25.2 start=25.2 end=48.7 start=48.7 end=60.1 start=66.2 end=69.2 start=69.2 end=72.2 start=72.2 end=75.2 start=75.2 end=78.2 予想出力: start=0.1 end=2.5 start=8.7 end=60.1 start=66.2 end=78.2

Admin

フォルダ内のファイルを繰り返し、列の先頭/末尾のスペースを削除します。
text-processing
awk
sed

フォルダ内のファイルを繰り返し、列の先頭/末尾のスペースを削除します。

この形式の複数のファイルを含むフォルダがあります> 1 Hello1 World1 Example1 2 Hello2 World2 Example2 ... 区切り記号は次のとおりです。\t 各列の先頭/末尾のスペースがある場合は、それらをすべて削除したいと思います。 はい 1 Hello1\s World1 \sExample1 ( \s) < はスペースを表し、予想される出力は次のようになります。 1 Hello1 World1 Example1 値にスペースを含めることができるため、スペースを完全に削除したくありません(例:)Hel lo。 また、新しいファイルを作成するのではなく、現在のファイルを編集したいと思います。

Admin

空白で区切られた1行のIPリストをIPごとに1行ずつ単一の列に変換します。
shell-script
sed

空白で区切られた1行のIPリストをIPごとに1行ずつ単一の列に変換します。

閉鎖。この質問には詳細または明確性。現時点では回答は許可されていません。 この質問を改善したいですか?詳細を追加して質問を明確にしてください。この記事を編集してください。 閉鎖3年前。 この問題を改善する 私は実際にこの問題の反対を探しています。 リストを区切り文字を使用して1行に変換 私にとって最も効果的な答えは次のとおりです。 sed -e :a -e '$!N; s/\n/ | /; ta' mydoc > mydoc2 どんな助けでも大変感謝します。

Admin

リンク形式を変更する sed または awk スクリプト
awk
sed

リンク形式を変更する sed または awk スクリプト

Web文書では、人々がhrefリンクから「を省略すると、エラーが頻繁に発生します。 例えば この問題を解決するために、マークダウンファイルで実行できるスクリプトを作成しました。 sed -i -e 's/ target=\"_blank\"/\"&/' docs.md これは上記の内容を操作し修正します。 ただし、aが見つからないことを確認しないため、"リンクが正しく作成されたら別のリンクを追加します。 また、hrefリンクの後には常に次のものが続くと仮定します。target="_blank" したがって、他の方法でアクセスして、a href=次のブロックが常に含まれていることを確認する方が" "良いかもしれません。 " "より多くの処理が必要な状況の例に href 以降の内容が含まれていることを確認して処理する場合、次の場合に処理が必要です。

Admin

sed は正確なパターンで行を削除します。
bash
shell
sed

sed は正確なパターンで行を削除します。

$iファイル内で正確に一致するパターンを見つけて、C1.txtsedコマンドを使用して一致する行を削除しようとしています。でも結局問題にぶつかりました。以下で私が見つけた結果と追加の詳細を見つけてください。 C1.txt # file: /home/mytest/data # owner: own # group: group-sm user::r-x group::rwx mask::rwx other::--- default:user::rwx default:group::r-x default:group:smr:rwx default:group:agm:r-x default:mask::rwx default:other::--- # file: /home/mytest/datasr123 # owner: own # group: group-sm user::r-x group::rwx mask::rwx other::--- 変わりやすい i=/home/mytest/data パスワード #!/bin/bash Input=C1.txt j=0 while IFS= read -r line; do j=$((j+1)) Exists=$(echo $line | grep -iwoP "$i" ) if [[ ! -z "$Exists" ]]; then sed -i "$j /\b"$i"\b/d" "$Input" fi done <"$Input" 予想される結果 C1.txt # file: /home/mytest/datasr123 # owner: own # group: group-sm user::r-x group::rwx mask::rwx other::--- エラーメッセージ sed: -e expression #1, char 3: unknown command: `/'

Admin

シェルスクリプトの変数値を定数ファイルにコピーする
shell-script
sed

シェルスクリプトの変数値を定数ファイルにコピーする

appcenter-pre-build.sh環境の種類に応じて、他のスクリプトを実行しています。環境がUATの場合は実行されますuat-pre-build.sh。 これはappcenter-pre-build.sh if [ -z "$ENV_TYPE" ] then echo "You need define the ENV_TYPE variable in App Center" exit fi echo "ENV_TYPE is : - $ENV_TYPE" if [ "UAT" = "$ENV_TYPE" ] then echo "Environment type : UAT" ENV_FILE=$APPCENTER_SOURCE_DIRECTORY/ABC/config/uat-pre-build.sh else echo "you need to mentioned correct envrionment type" exit fi echo "Environment file : $ENV_FILE" sh "$ENV_FILE" ビルド環境に応じて、3つの異なるスクリプトがあります。 uat-p​​rebuild.sh developmentprebuild.sh 製品 prebuild.sh 上記のスクリプトでは、変数の値を読み取り、それをConfigurationHelper.csに割り当てようとします。 これは私のuat-p​​re-build.shです。 APP_ID=b1a4a39f-4d89-4f04-98d8-2a20eda89aad # Get ConfigurationHelper.cs from project APP_CONSTANT_FILE=$APPCENTER_SOURCE_DIRECTORY/helpers/ConfigurationHelper.cs if [ -e "$APP_CONSTANT_FILE" ] then echo "Updating environment configs in AppConstant.cs" sed -i '' 's#ApplicationID = "[-A-Za-z0-9:_./]*"#ApplicationID = "'$APP_ID'"#' $APP_CONSTANT_FILE echo "File content:" cat $APP_CONSTANT_FILE else echo "Can not locate $APP_CONSTANT_FILE file" fi これはConfigurationHelper.csです。 public class ConfigurationHelper { public static string ApplicationID = string.Empty; static ConfigurationHelper(){} } スクリプトを実行できますが、APP_ID値uat-pre-build.shをに割り当てることはできませんConfigurationHelper.cs。次の行が正しく実行されないようです。 sed -i '' 's#ApplicationID = "[-A-Za-z0-9:_./]*"#ApplicationID = "'$APP_ID'"#' $APP_CONSTANT_FILE これはApplication Centerの出力です。 [command]/bin/bash /Users/vsts/agent/2.153.1/work/1/s/ABC.Android/appcenter-pre-build.sh ENV_TYPE is : - UAT Environment type : UAT Environment file : /Users/vsts/agent/2.153.1/work/1/s/ABC/config/uat-pre-build.sh Updating environment configs in AppConstant.cs File content:  namespace ABC.Business.Helpers { ///

/// The configuration helper. /// public class ConfigurationHelper { public static string ApplicationID = string.Empty; /// /// Initializes static members of the class. /// static ConfigurationHelper() { } } } この問題を解決するのに役立ちます。

Admin

「sed」を使用してTSVファイルのフィールドの末尾にテキストを挿入する
text-processing
sed
bioinformatics

「sed」を使用してTSVファイルのフィールドの末尾にテキストを挿入する

sedワイルドカード式を含むコマンドを使用してTSVファイルに文字を挿入したいと思います。 次のファイルがあります。 Marker Pvalue Trait Chr Pos S3_16887238 6.172847e-09 Total_Soil_S 3 16887238 S3_16887238 6.172847e-09 Total_Soil_Pa 3 16887238 S3_16887238 6.172847e-09 Total_Soil_Cl 3 16887238 _All3番目の列のすべてのテキストの末尾に次の内容を追加したいと思います。 Marker Pvalue Trait Chr Pos S3_16887238 6.172847e-09 Total_Soil_S_All 3 16887238 S3_16887238 6.172847e-09 Total_Soil_Pa_All 3 16887238 S3_16887238 6.172847e-09 Total_Soil_Cl_All 3 16887238 このコマンドを使用していますが、動作しません。 sed -i 's/Total_Soil_\(.*\)/&_\1_All/g' top1.txt Sこれはサンプルファイルなので、およびをPa置き換えることができますCl。

Admin