シェルスクリプト総合 その35
レス数が1000を超えています。これ以上書き込みはできません。
シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
前スレ: シェルスクリプト総合 その34
https://mevius.5ch.net/test/read.cgi/tech/1597990675/ >>951
俺ルールじゃなくて、既存のルールのサブセットだけどな
まあ知らない人にとっては特殊なルールに見えるんだろうね >>946
シェバンに/bin/bash、 debian/control に Depends: bash って書くがよい 何か作業しようとするときにログインがbashかそうでないかは重要 >>952
それが「俺ルール」なんだっつーの。
アホなの?w >>952
すでにデファクトスタンダードになってるだろう、>>951のがあるんだから「俺なら」ってのはいらないって話じゃないの
シェルスクリプト用には>>915を用いたのがになるだろうし
「俺なら」がGNUとBSDの違い(があるなら)を勘案してのかと思ったら、解析は面倒くさすぎるって言ってるから違うっぽいかな >>951はC言語のインターフェースじゃんw
ロングオプションにも対応してないし シェルで標準的に使われてるのってgetoptかgetoptsじゃないの?
どっちも微妙だけど getoptはPOSIX準拠じゃないうえにMacで挙動が違うしな 現行ディレクトリ直下にあるファイルを日付順に処理したい。
dateの-dオプションと'%s'書式を使ったやりかた
(-dオプションにlsの出力の日付欄を渡して,%s書式でsortに回しやすい形式に変換する)
は思い付くのだが,できればもうちょっと汎用性のあるやりかたでやりたい。
それこそAlpine Linuxでもできるようなやりかた,せめてSUS準拠くらいで。 Alpine LinuxだのSUS準拠だの言ってるくせに... >>962
lsで日付順ってできたっけ。
しかもaccessとかmodifyとか色々あるけど。 最近はマニュアル読まないで人に聞く豆腐が増えたよな Alpine LinuxだのSUS準拠だの言ってるくせにこのザマとは Unix Version 1 からあるな
逆順は System III にはあるな
興味があって探してみたらあるもんだな 逆順は Unix Version 4 からだな
本当に探せばあるもんだなぁ だれも**なぜか**具体的なこと教えていないので私が。
> -c
> Use time of last modification of the file status information (see XBD <sys/stat.h>) instead of last modification of the file itself for sorting ( -t) or writing (-l).
というわけでPOSIXに従うならls -ct1とかで一覧表示して,
xargs(1)で処理するのはどうかな。
まあ改行を含むファイル名には対処できないが。 Q: 現行ディレクトリ直下にあるファイルを日付順に処理したい。
A: lsでソート出力すればいいじゃん
人にものを教えてもらった時は「ありがとうございました」だろ 利奈みんとbotっていい加減停止してほしい
過去の質の悪い情報を、何度も繰り返しツイートすんな Q: 現行ディレクトリ直下にあるファイルを日付順に処理したい。
A: ls -ct1 知らなかったくせにプライドだけはいっちょ前だな
謙虚さが無いやつは成長しない >>970
こんな殺伐としたスレでもちゃんと立ててくれる人がいる、おつおつ >>982
謙虚さがないから人の言っていることがわからないのか
単に馬鹿だから色々わからなく人との接し方もわからないのか
どうも後者っぽいな。リアル社会でも人と接するのが難しいレベルな >>985
いや、俺が教えろっつったら教えろよ
学生時代てめえみたいな陰キャを脅してノート写して貰ってた感じで俺は質問したんだぞ
あ? >>987
イチビリにかまうな。
かまうのなら、おもしろく。 #!/bin/bash
# >>162
# 日本で生まれたけど国籍は日本ではない外国人が使う「通名」作成スクリプト
JUNG=1
while [ $JUNG -lt 21 ]
do
echo "$JUNG回目"
(( JUNG ++ ))
NAME=$( shuf -e 村 崎 本 田 山 玉 子 -n 1 )
if [ "$NAME" = "玉" ]
then tput setaf 3 && echo "金$NAME"; tput sgr0
else echo "金$NAME"
fi
sleep 3
done bash
変数sに文字列を代入したいのですが、文字列が長いので複数行に分けて書く方法を教えてください
s="a"
\ "b"
\ "c"
↑
これはエラーになりますがこんな感じで複数行に分けて、sにはabcと1行分として代入されているようにしたいです bash なら...最後の2行がちょっと残念感あるけど
s=$(cat <<EOF
a
b
c
EOF
) 3行じゃなくて1行っていみなら最終行以外の末尾にバックスラッシュで
s=$(cat <<EOF
a\
b\
c
EOF
) >>993
その場合でも単に \ の位置が間違い。1文を行変える場合は \ は行頭じゃなく行末 s="a\
> b\
> c"
echo $s
abc $ l\
> s
ってしても、単に ls っていう
シンプルの極み、いつでもどこでも改行したければどうぞって感じ a="aaa"
b="bbb"
c="ccc"
s="$a$b$c" このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 96日 4時間 48分 17秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。