問題タブ [tr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - 関数の引数をbashで大文字から小文字に変換する
誤ってキャップロックをオンにして、大文字と小文字を区別するツールを実行しようとしているときに問題を修正する便利な機能を作成しようとしています。
MAKE DEBUGたとえば、ときどきの代わりにタイプしていることがありmake debugます。
私が今持っているものは非常に簡単ですalias MAKE="make".makefileを編集してルールを複製しますDEBUG: debug.
関連するツールを変更することなく、引数で機能するソリューションを希望します。
sed - 特定の正規表現で始まらない行を前の行に追加します
sms;配信;"+99999999999";"";"";"2012.06.23 09:21";"";"xxxxxxxxxxxx xxxxxxxx、
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx"
「sms;deliver;」で始まらない行が必要です 前の行に追加されます。つまり、そのような行を取得するには:
sms;配信;"+99999999999";"";"";"2012.06.23 09:21";"";"xxxxxxxxxxxx xxxxxxxx、xxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxx"
^ 一行です。また、xxxxx(コンテンツ) 部分の二重引用符を削除/置換すると便利です。
sms;配信;"+99999999999";"";"";"2012.06.23 09:21";"";"xxxxxxxxxxxx xxxxxxxx、xxxxxxxxxxxx xxxxxxxxxxxx "xxxx"xxxxxxxx"
したがって、上記の行は次のように変換されます (二重引用符は単一引用符に変換されます)。
sms;配信;"+99999999999";"";"";"2012.06.23 09:21";"";"xxxxxxxxxxxx xxxxxxxx、xxxxxxxxxxxx xxxxxxxxxxxx 'xxxx'xxxxxxxx"
linux - Bash から iconv を使用してファイルとフォルダーの名前を再帰的に変更する方法
ファイルとフォルダーの名前を iconv で再帰的に変更しようとしましたが、成功しませんでした。ファイルの名前は正しく変更されましたが、フォルダーは変更されませんでした。
私がファイルに使用するのは(完璧に機能します):
ファイルとフォルダーに対して試したこと (失敗: フォルダーの名前のみを変更):
元の問題:多くのファイルの名前を一括して「ウェブフレンドリー」にしたいだけで、スペースや奇妙な文字などを削除するように考えていますが、現在私は持っています
上記の tr と iconv を一度に実行する方法はありますか? 名前を変更するファイルが約 300,000 個あるので、できれば 2 回目の検索は避けたいと思います。
必要に応じて、Bash 4.2.24 を使用しています。
前もって感謝します。
string - スラッシュを含む文字列の一部を削除する
スラッシュと疑問符を含む文字列の一部を削除する方法に困惑しています。
例:/diag/PeerManager/list?deviceid=RXMWANT8WFYJNF7K6DXXXJLJVN
そして、私は出力が必要ですRXMWANT8WFYJNF7K6DXXXJLJVN
試してみましtrたsedがtr、出力に必要な文字の一部を削除しました。sedスラッシュが原因で困っています。
/diag/PeerManager/list?deviceid=文字列の一部を削除する簡単な方法は何ですか? ありがとう!
bash - trコマンドはcygwinbash.exeシェルで問題を引き起こしますが、mintty.exeでは機能します
私はcygwinでWindowsを使用しています。次のコマンドは、文字列「./bootstrp3.cab」に含まれる「/」の出現回数を出力する必要があります。mintty.exeシェルを使用すると機能し、「1」を出力します。
残念ながら、bash.exeシェルで次のメッセージを出力します
2つのシェルの動作は異なるようですが、どちらも同じ種類のシェルのようです。これはecho $0、bash.exeが出力bashし、mintty.exeが出力するため-bashです。
また、bourneシェル(sh.exe)を使用してコマンドを試しましたが、bash.exeシェルと同じメッセージが出力されます。
コマンドをsh.exeまたはbash.exeシェルで動作させる方法を知っている人はいますか?そして、2つのbashシェルの動作が異なる理由を誰かが知っていますか?
bash - 「abcdefgh」を「abcd」と「efgh」に分割するにはどうすればよいですか?
これは本当に自明です。私はbashシェルで作業していて、シェルスクリプトを初めて使用します。使用に関する多くの情報を見つけましたが、これまでtrにsed見つけたすべての例では、区切り文字と新しい行を削除しています。私は本当にその反対をしたいです。余白で分けられるようにしたいと思います。「abcdefgh」のような文字列があり、「abcd」「efgh」である必要があります(グループ化を示すために、すべて引用符なしで)。
これは私が作っているよりもはるかに簡単だと確信していますが、私は非常に混乱しています。
更新された質問:
配列に入れたPIDの列がありますが、配列の各要素の列には両方のpidがあります。
桁:
配列全体を印刷すると、すべての異なる列が追加されたため、すべての値が得られますが、配列の1つの要素を印刷すると、次のようになります。
それは私が望むものではありません。1234用の要素と5678用の別の要素が必要です。
これはこれまでの私のコードです:
サンプル出力:
配列の各要素が単一のpidになるように、各pidを分離する必要があります。たとえば、「3番目のpidは次のとおりです」という行は次のようになります。
4番目の要素は4340になります
unix - 別の UNIX コマンドの結果をパイプする方法
現在、別のテキスト ファイルを使用して 1 つの UNIX コマンドの結果を保存し、そのファイルを使用して別のコマンドを実行しています。
一時ファイルを使用する必要がないように、これら 2 つを 1 行に結合するにはどうすればよいですか? 以下は機能しません。
&& の使い方は知っていますが、それでも一時的なホルダー ファイルを使用する必要があります。
重複の可能性: Bash: あるコマンドの各結果を別のコマンドにパイプする方法
unix - Unixコマンドtr-cの使用法
tr(Unixコマンド)の-cオプションを理解するのに問題があります。
このフォーマットを見てtrください:tr [Options] set1 [set2]
これは、「set1の補数(つまり、set1にないすべての文字)を使用する」という意味-cの[オプション]であると理解しています。ただし、このコマンドの使用方法の例を挙げて、利点を説明してください。tr
ありがとうございました
bash - tr -cd '[[:digit:]]' は 1 桁のみを提供します
この関数は、destinationDirectory 内のフォルダー名をループして、ファイル名の末尾にある最大の数値を検索し、その値をインクリメントして、その値を folderNameWithoutNumber の末尾に追加します。か、そうなると思った。バッシュ機能:
この関数が最初の 10 回呼び出されると、最初の 10 個のバックアップが /path/to/backups/folderName_1、/path/to/backups/folderName_2、... /path/to/backups/folderName_10. 関数が再度呼び出されると、/path/to/backups/folderName_11 は作成されません。
私の最初の質問は、なぜこれが思ったように機能しないのですか (folderName_11 の作成とカウント)?
2 番目の質問は、数値部分を 3 桁の長さ (folderName_001、folderName_002) にするために、ファイル名の前にゼロを含めるようにフォーマットするにはどうすればよいかということです。
3 番目で最後の質問です。宛先には、同じ名前の同じフォルダーのバックアップのみを含める必要があるため、グループ内の最後のフォルダーには最新 (最大) の番号が必要です。なんらかの理由でフォルダがソートされていない場合に、最大数が確実に見つかるようにするにはどうすればよいでしょうか?
apache - sed/trシェルスクリプトの最適化
私は、ServerAliasをApache構成ファイルに自動的に追加し、Apacheを再起動するスクリプトを作成しました。これは、一般的なシェルスクリプトをかなり理解しsed、trおそらくはシェルスクリプトを使用したものです。これは私が思いついたものです:
基本的に、私はコピーを作成し、ServerName行をそれ自体+新しいエイリアスに置き換え、tr改行とタブを配置するために使用し(sedそれについては奇妙でしたか?)、古い構成ファイルを上書きし、コピーを削除してから、Apacheを再起動します。
それは機能しますが、私の言いたいことを知っていれば、ママを誇りに思うことはありません。それをクリーンアップする方法について何かアイデアはありますか?