タグ

sedに関するU1and0のブックマーク (12)

  • sedでファイルの最終4行を消す処理について - 余白の書きなぐり

    結論から言うと、sedを使ったスマートな方法は無いので、headコマンドを使いましょう。 $ head -n -4 file # どうしてもsedを使いたければ $ cat file |sed -e '$d' |sed -e '$d' |sed -e '$d' |sed -e '$d' デマが蔓延している 以下のような$-3記法(そんなsedはない)をデッチ上げて紹介している記事が多い。 $ sed -e '$-3,$d' file sedコマンドの備忘録 - Qiita フィルタの利用法:ねこすけのシェルスクリプト sed usage - Shouheiのメモ sedコマンドによる最終行の削除について - UNIX・Linux 締切済 | 教えて!goo デマの発生源? SBクリエイティブ:【正誤情報】入門UNIXシェルプログラミング 改訂第2版 ●第7章:p.175、下から3-1行目

    sedでファイルの最終4行を消す処理について - 余白の書きなぐり
    U1and0
    U1and0 2019/05/02
    “sedでファイルの最終4行を消す処理について シェルスクリプト 結論から言うと、sedを使ったスマートな方法は無いので、headコマンドを使いましょう。 $ head -n -4 file”
  • sed | テキストの置換処理を得意とするスクリプト言語

    2023.12.01 sed は、テキストの置換処理を行う目的で作られたスクリプト言語である。ほとんどの場合、1 行のスクリプトを記述だけで、テキストの置換などをはじめとして、後方参照を利用した置換などの複雑な処理も可能である。インターネットで one-liners for sed などと検索する、様々な処理を 1 行の sed スクリプトで行う例を多く見つけることができる。 文字列置換 sed コマンドを利用して、文字列の置換を行うとき、sed コマンドに続いて -e オプションを付けて、その後ろに置換パターンなどを書く。 基的な置換方法 例えば、sample.fa ファイル中の、各行に出現する最初の TAG を * に置換する場合は以下のようにする。 sed -e 's/TAG/*/' sample.fa 各行に出現するすべての TAG を * に置換する場合は以下のように g を付

    U1and0
    U1and0 2019/01/14
    “後方参照したい部分を \( と \) で囲み、参照は \1 や \2 などのように行う。”
  • jq

    jq is a lightweight and flexible command-line JSON processor. jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text. jq is written in portable C, and it has zero runtime dependencies. You can download a single binary, scp it to a far away machine of the same type, and expect

    U1and0
    U1and0 2018/09/15
    jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text.
  • sedコマンドでファイルの先頭行に文字列を挿入する - Qiita

    ファイルの末尾に追記するなら、echoでリダイレクトですが先頭行に追記するときってどうするのかな?となったのでメモしておきます。

    sedコマンドでファイルの先頭行に文字列を挿入する - Qiita
    U1and0
    U1and0 2018/05/07
    sed -i '1挿入するワード' 挿入するファイル.txt
  • Dockerで一般ユーザにsudoをさせようと思ったらパスワードが必要だったので、パスワードなしsudoを許可させる方法

    はじめに DockerDockerfileを編集していて、一般ユーザにsudoを与える必要がありました。 基的にDockerではrootで作業をしますが、今回は一般ユーザで作業を行わせようとしました。 その中で一般ユーザではsudoを使わせようと思いましたが、sudoではパスワード設定が必要でした。 Dockerfileにパスワードを書く訳には行きませんので、パスワードなしsudoを許可させることにしました。 sudoers sudoについての制御は/etc/sudoersで行われています。このファイルを変更します。 ところでsudoersは「スードゥアーズ」って読んでます。みんなどう読んでいるんでしょうね😲 下記の辺り付近でsudoを実行できる権限が設定されています。 ## Allow root to run any commands anywhere root ALL=(ALL)

    Dockerで一般ユーザにsudoをさせようと思ったらパスワードが必要だったので、パスワードなしsudoを許可させる方法
    U1and0
    U1and0 2018/01/21
    “sed -i -e 's/# %wheel\tALL=(ALL)\tNOPASSWD: ALL/%wheel\tALL=(ALL)\tNOPASSWD: ALL/' /etc/sudoers # sed -i -e 's/%wheel\tALL=(ALL)\tALL/# %wheel\tALL=(ALL)\tALL/' /etc/sudoers # visudo -c”
  • sedでファイルを上書き保存

    単一ファイルの場合 -i(--in-place)オプションが使えるsedの場合 cygwinのsed(GNU sed 4.1.5版)では,オプション-i(--in-place)を使うと入力ファイルの上書き更新ができる.例として,「filter.propertiesファイルの中の先頭が#で始まる行(コメント行)を削除して上書き」してみよう.今回の場合は以下の通りとなる.ちなみに先頭の$はコマンドプロンプトである. $ sed -i -e '/^#/d' filter.properties または $ sed --in-place --expression=/^#/d filter.properties 上書き前のファイルをバックアップとしてとっておくなら-i(--in-place)にバックアップ用の拡張子を指定する.例えば,上書き前のファイルに拡張子.bakをつけて保管する場合は以下の通り.

    U1and0
    U1and0 2018/01/16
    “cygwinのsed(GNU sed 4.1.5版)では,オプション-i(--in-place)を使うと入力ファイルの上書き更新ができる.例として,「filter.propertiesファイルの中の先頭が#で始まる行(コメント行)を削除して上書き」してみよう.今回の
  • sedを使ってiniファイルのコメントアウト、アンコメントを行う方法 - Qiita

    $ cat conf.ini servers[]="192.168.56.102" servers[]="192.168.56.103" servers[]="192.168.56.104" 192.168.56.102 のサーバーをメンテナンスしたいのでコメントアウトしたい場合、 sed を使って以下のように実行できます。 iniファイルは先頭に;(セミコロン)を付けることでコメントアウト出来ます。 -i のオプションと最後のファイル名を指定することで、ファイルをそのまま書き換える事が出来ます。 s/ から始まる部分は正規表現を使って記述することが可能です。/までが置換前文字列、 次の/までが置換後文字列になります。 &は正規表現にマッチした文字列を表しますので、;& と書くことで内容を変更せず、コメントアウトだけが可能です。 この場合&には、servers[]="192.168.56.

    sedを使ってiniファイルのコメントアウト、アンコメントを行う方法 - Qiita
  • ログイン - yanor.net/wiki

    Site admin: admin01 PukiWiki 1.5.3 © 2001-2020 PukiWiki Development Team. Powered by PHP 7.4.33. HTML convert time: 0.002 sec.

    U1and0
    U1and0 2017/08/10
    がシェル展開されずにsedに伝わる。sedは「\\」を「\」と解釈し、結果を表示する。 > echo "/" | sed -e 's/\//\\/' \”
  • 大量のファイルをシェルのコマンドで一括リネームする | DevelopersIO

    コマンド $ ls | sed -e s/\.txt// | awk '{print $1 ".txt " $1 "_document.md"}' | xargs -n 2 mv 戦略について まず前提として、ファイルのリネームを行うには、 xargs -n 2 mv にパイプで 元ファイル名 リネーム後のファイル名 のようなフォーマットの文字列を渡せば OK です。 $ ls before.txt $ echo "before.txt after.txt" before.txt after.txt $ echo "before.txt after.txt" | xargs -n 2 mv $ ls after.txt この文字列が複数行ある場合、 xargs -n 2 mv は1行ずつ順次処理します。 $ ls 1.txt 2.txt $ echo "1.txt 11.txt\n2.tx

    大量のファイルをシェルのコマンドで一括リネームする | DevelopersIO
  • sed に関するメモ

  • sedによる文字列操作 - どこでも見れるメモ帳

    はじめに sed*1便利ですよね.ちょっとした文字列操作が簡単にできます. ただ,日常的に使わないと,コマンドとかオプションとかを覚えるのが難しいですよね. ワンライナーな用途を前提として,どういった使い方ができるのか,整理してみました. sedコマンドの構造 sedコマンドは,おおまかに次の3つの構造からなります. A. コマンドオプション(入力ファイルを編集する?標準出力を抑制する?など) B. 範囲指定(どの行について処理する?) C. 文字列操作(どういう文字列操作をする?) 例えば, $ sed -i '3,10 s/hoge/fuga/g' input.txt であれば, A. コマンドオプション:「-i」:B.C.の操作結果を入力ファイル(input.txt)に上書きする B. 範囲指定:「3,10」:3〜10行目について C. 文字列操作:「s/hoge/fuga/g」:h

    sedによる文字列操作 - どこでも見れるメモ帳
    U1and0
    U1and0 2016/06/29
    複数の文字列操作(コマンド1とコマンド2の同時実行:「コマンド1;コマンド2」)
  • sed の区切り文字 - Invalid signature

    URLリライティングのための/etc/apache2/sites-available/defaultの 修正が手動だったため、自動化するために新しくゲストを作ると sedがunknown option to `s'というメッセージを 出していた。 調べてみるとスラッシュをアットマークで置き換えてみろというアドバイスを 見つけた。 ただ、リファレンスページみたいなところではその事は一切触れて おられず、気持ち悪い。 調べを進めると納得出来る情報を見つけた。 sed コマンドは「s」の直後に指定した文字を区切り文字として認識する。 したがって、使用する区切り文字は "/" でなくともよい。 特に "/" 自体を置換対象とする場合は、"/" の代わりに "%" や "|" などを 区切り文字に使用すると、"/" をエスケープする必要がなくなる。 http://shellscript.sunone

    sed の区切り文字 - Invalid signature
    U1and0
    U1and0 2016/06/29
    sedがunknown option to `s' "/" 自体を置換対象とする場合は、"/" の代わりに "%" や "|" などを 区切り文字に使用すると、"/" をエスケープする必要がなくなる。
  • 1