シェルスクリプト質問スレ
なんのためにそうしたいのか聞いただけでこの反応w やることが目的になってんのな なにがどうシェルスクリプトに関連するのか全然わからん <main> <sub_aaa id=A> <sub_bbb> </sub_bbb> </sub_aaa> <sub_aaa id=B> <sub_ccc> </sub_ccc> </sub_aaa> </main> を A.xml B.xml <main> <main> <sub_aaa id=A> <sub_aaa id=B> <sub_bbb> <sub_ccc> </sub_bbb> </sub_ccc> </sub_aaa> </sub_aaa> </main> </main> と言った感じで<sub_aaa>タグ毎にファイル出力する方法教えてください。 すみません スペースで埋めたところがスペース1個文しかインデントできてなくて見にくくてすみません。 シェルスクリプトって文字列を""で囲まなくてもいいんですか? >>104 cat ab.xml | sed -n '/<sub_aaa/,/<\/sub_aaa/'p | awk -F[=\>] '/<sub_aaa/{OUT=$2}{print $0 >> OUT".xml"}' シェルスクリプトで教えてください ファイル中の文字について、以下のような置換をしたいです 前 後 a →X b →U c →E d →P ::: y →A z →M 前と後は1:1なのですが、変換後の並びは不規則です sed -e 's/a/X/g' -e 's/b/U/g' 〜〜〜 とaからzまで並べることで 一応置換はできるのですが、長大な行となってしまっており、 どうにかならないかと思ってます >>109 cat filename | tr [a-z] [XUEP〜AM] というのはどうだろう mvを常にmv -iで実行するようにしたいのですがどうすればいいですか >112 "常に"がどういう意味かによる ターミナルから自分の手でmvするとき常になのか、自分のユーザー名でmvするとき常になのか、全てのユーザーがmvするとき常になのか たぶん下記のようにすればいいんだろうけどなにか副作用があるかもしれない $ cat ~/.bashrc mv() { command -p mv -i "$@"; } #or mv() { /usr/bin/mv -i "$@"; } $ cat ~/bin/mv #!/bin/sh /usr/bin/mv -i "$@" $ cat /usr/local/bin/mv #!/bin/sh /usr/bin/mv -i "$@" ありがとうございます なるほど、あまり影響が大きいのは怖いですね、一番上がよさそうですね 強制的にリネームするときはmv -fとやるという運用を考えています コマンドラインより与えられ、$1や$2等に入れられたオプションを 以下のように表示したいと思ってます ./aaa.sh a bb ccc $1=a $2=bb $3=ccc 以下のようなスクリプトで「$n=」まではできたのですが、その後のxxxxにあたる、 位置パラメータを示す$と、変数iを組み合わせてできた「$1」を 更に評価した結果である「a」や「bb」を得る方法が分かりません #!/bin/bash for i in `seq 1 $#`; do echo "\$${i}=xxxx" done どのようにすればよいか教えてください >115 やりたいことを実現するだけなら、難しく考えずに最初の引数を表示したらshiftすればいいと思う for i in $(seq 1 $#) do echo "\$$((i))=\"${1}\"" shift done >>115 オプションの概念がないのか? 引数の順番だけで判断すると、複雑なものになって想定外の使われ方、使い方をしてしまう #/bin/sh for i in `seq 1 $#`; do eval echo \\\$$i=\$${i} done ラズパイOSの起動時にシェルが自動で動くよう試しています 打ち込みでシェルの内容が動くことは確認できるのですが、cronやsystemd では、思うように動きません。シェルの内容がおかしいのでしょうか #!/bin/sh cd /home/dtt/google-home-player/ nohup lt -s modulenotfound -p 3000 >/dev/null 2>&1 & nohup /usr/local/bin/node server_for_line.js >/dev/null 2>&1 & nohupコマンドを使っているが、フォアグラウンドとバックグラウンドもわかってないのかな? >>121 hpのコピペなんで。systemdとforeverで分けて read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる