トップページunix
1001コメント273KB

シェルスクリプト総合 その5

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2006/01/21(土) 09:00:29
シェルスクリプトの総合スレです。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。
まずは注意点、リンク、地鎮祭など(>>1-6くらい)をご覧ください。


□お約束
・特記なき場合はbourne shがデフォルトです。
 bash/csh/tcsh/zsh/ksh/ashなどに依存する場合は明示しましょう。
 Linuxユーザは/bin/shの正体がbashなので特に注意。
・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。
 manや参考リンクを見ましょう。
 aproposないしはman -kでそれらしい単語による簡単な検索もできます。
・シェルスクリプトのことをシェルってゆーな
・シェルで使えるワイルドカード等は正規表現ではありません。
正規表現の話題はスレ違い(正規表現スレへ)

□初心者へのアドバイス:
・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも
 RubyやPerlの方が適した仕事には素直にそちらを使いましょう。
・知らないコマンドが出てきたらmanを引きましょう。
・思い通りに動かないときは、まずは sh -x でトレースしましょう。
0621名無しさん@お腹いっぱい。2006/03/14(火) 07:37:17
mmm = とらいえむ
0622名無しさん@お腹いっぱい。2006/03/14(火) 08:49:45
>620
perlについてくるぞ。
0623名無しさん@お腹いっぱい。2006/03/14(火) 08:57:46
>>620
http://search.cpan.org/~rmbarker/File-Rename-0.02/lib/File/Rename.pm
0624名無しさん@お腹いっぱい。2006/03/14(火) 09:05:15
「Linuxのrename」ってなんだよ
0625名無しさん@お腹いっぱい。2006/03/14(火) 11:59:17
UNIX用のVBscriptは無いかな
あると便利なんだが
0626名無しさん@お腹いっぱい。2006/03/14(火) 12:12:45
>>625
http://www.gnome.org/projects/gb/
は終わったか。
http://www.mono-project.com/VisualBasic.NET_support
とか?
0627名無しさん@お腹いっぱい。2006/03/14(火) 12:49:29
>>624
Linuxだと標準で /usr/bin/renameがある。
renameといえば普通これを指す。ちゃんとしたバイナリだし、
perlは無関係だよ。
0628名無しさん@お腹いっぱい。2006/03/14(火) 13:01:34
>>605 は Linuxの/usr/bin/renameだと
rename jpeg jpg *.jpeg
となるようだ。
全く別物の同名コマンドが出回っているようなので、
シェルスクリプトでは使えんな。
(もともと使ってなかったけど)
0629名無しさん@お腹いっぱい。2006/03/14(火) 13:12:49
>>627
一口に Linux って言ってもその辺はディストリによって違うだろ。
Debian の /usr/bin/rename は perl スクリプトだよ。
たぶん >>623 の古い版。
0630名無しさん@お腹いっぱい。2006/03/14(火) 13:17:14
「Linux の rename」じゃなくて
「util-linux の rename」だろうな。
0631名無しさん@お腹いっぱい。2006/03/14(火) 13:22:37
少なくとも Fedora Core 4 と Plamo は、>>628 の文法のバイナリコマンド。
perlではない。RH系とSlackware系が同じだから、他でも同じかと思ったら
Debianでは違うのか。
まあ、そもそもrenameなんて使わないし、どうでもいいけどね。
人に説明する時はどのrenameか断らないと誤解を受けるね。
0632名無しさん@お腹いっぱい。2006/03/14(火) 14:03:01
Debianのutil-linuxにはrenameはない。

俺の環境だとperlパケージの/usr/bin/prenameへのシンボリックリンク

$ update-alternatives --display rename
rename - status is auto.
link currently points to /usr/bin/prename
/usr/bin/prename - priority 60
slave rename.1.gz: /usr/share/man/man1/prename.1.gz
Current `best' version is /usr/bin/prename.

要するにDebianの場合サイトごとに違う。
# ここんところがシェルスクリプトスレにちょいと関係あるのでレスしてみた。

といってもrenameの候補があるperl以外のパケージ見たことないが…
0633名無しさん@お腹いっぱい。2006/03/14(火) 15:00:24
昔から自分で作ったの使ってたので
そういうのあるの知らなかった。
0634名無しさん@お腹いっぱい。2006/03/14(火) 17:20:25
相変わらずレベル低いなw
0635名無しさん@お腹いっぱい。2006/03/14(火) 21:03:04
lwallのrename.pl、relink.pl、そんでもってhakansonのmkshadowdir.plは
俺的には珠玉のperlスクリプト。
0636名無しさん@お腹いっぱい。2006/03/14(火) 22:36:00
初歩的な質問だが、

$cat L1
aaa
bbb
ccc
1
ddd
eee
2

これを
$cat L1
aaa bbb ccc 1
ddd eee 2

に変換する方法教えてくれ〜
0637名無しさん@お腹いっぱい。2006/03/14(火) 22:48:16
while read x; do
if expr "$x" : '[0-9][0-9]*$' > /dev/null; then
echo "$x"
else
echo -n "$x "
fi
done
0638名無しさん@お腹いっぱい。2006/03/14(火) 22:50:20
条件がよーわからん。

変換後が2行になるための条件は?
数字が来たらってこと?
0639名無しさん@お腹いっぱい。2006/03/14(火) 22:52:53
>>636

while read word
do
echo -n "$word "
case $word in [1-9]*) echo;; esac
done < L1
0640名無しさん@お腹いっぱい。2006/03/14(火) 23:02:21
>638
すうじがきたら改行
0641名無しさん@お腹いっぱい。2006/03/14(火) 23:04:08
質問です。

for name in hoge hage
{
 echo $name
}

↑みたいな書き方は bash依存ですか?
なんか、Solarisの/bin/shでも動いてしまうんですけど、
manには記述がありません。(do doneの記述のみ)
0642名無しさん@お腹いっぱい。2006/03/14(火) 23:06:37
cat L1 | tr -d "\n" | sed 's/([0-9]+)[^0-9]/\1\n/g'
0643名無しさん@お腹いっぱい。2006/03/14(火) 23:11:23
>>642
お約束の突っ込み。「catが無駄です」

>>637 >>639 >>642 の中では、外部コマンドを使っていない
>>639 が一番エレガントだな。

あ、>>642って、数字以外のの入力がスペースなしでくっついてしまうんじゃないか?
0644名無しさん@お腹いっぱい。2006/03/14(火) 23:20:08
じゃあついでに

$cat L1
111
222
333
a
444
555
b

これを
$cat L1
111 444
222 555
333 b
a
に変換する方法教えて
0645名無しさん@お腹いっぱい。2006/03/14(火) 23:20:10
>>641
POSIXの仕様によれば、{}は()と同じくcompound-listを構成することができる。
で、for文は"The for loop requires that the reserved words do and done
be used to delimit the sequence of commands"と書いてあって、
「do/doneをつかわなければならない」のかはちょっとわからない。
0646名無しさん@お腹いっぱい。2006/03/14(火) 23:20:29
>>639は行末に余分な空白。
case内で処理した方がいい。
0647名無しさん@お腹いっぱい。2006/03/14(火) 23:29:41
>>645
do doneの代用としての { } と、
compound-list の { } は違うしなぁ。
すると、Solarisとかで forで { } が使えてしまうのって
一種の隠しコマンドみたいなもの?
0648名無しさん@お腹いっぱい。2006/03/14(火) 23:34:12
>>644
それはjoin一発じゃないか?

>>639
数字の後にスペースはいっちゃわね?
0649名無しさん@お腹いっぱい。2006/03/14(火) 23:35:50
>>644
while read word1; do read word2; echo $word1 $word2; done

1行で桶。
0650名無しさん@お腹いっぱい。2006/03/14(火) 23:37:01
>>649
問題欲嫁。
0651642 2006/03/14(火) 23:42:52
じゃ
sed 's/$/ /g' L1 | tr -d "\n" | sed 's/([0-9]+)[^0-9]/\1\n/g' とか。


>>644 はColumnとか使えそう。使ったこと無いので詳しくはまんまん。
0652名無しさん@お腹いっぱい。2006/03/14(火) 23:44:28
>>648
joinじゃ無理じゃない? フィールド一致を見てしまうから。
0653642 2006/03/15(水) 00:09:38
>>644
column -c 20 L1
とかだった。
0654sage2006/03/15(水) 00:16:10
>>652
>>648 はたぶん paste のことを言いたいのだろう
0655名無しさん@お腹いっぱい。2006/03/15(水) 00:49:50
本当にレベル低いなぁ。ここの回答者たちって本業は何?
0656名無しさん@お腹いっぱい。2006/03/15(水) 01:38:18
粘土屋
0657名無しさん@お腹いっぱい。2006/03/15(水) 02:17:30
>>655
馬鹿学生。

とりあえず何ができればレベルが上がったと
定義するのか説明してくれ。
0658名無しさん@お腹いっぱい。2006/03/15(水) 02:19:58
スライムを一撃で倒す。
0659名無しさん@お腹いっぱい。2006/03/15(水) 04:17:58
回答する側に立つなら、
sed一つで済むところを3つもプロセス使うなんて馬鹿げたことはやめてくれよな。
0660名無しさん@お腹いっぱい。2006/03/15(水) 09:28:26
>>657
俺が決める
0661名無しさん@お腹いっぱい。2006/03/15(水) 10:45:13
>>658
お前、スライム一匹にイオナズン使うタイプだろ。
0662名無しさん@お腹いっぱい。2006/03/15(水) 10:54:20
もういいからぜんぶ機械語で書け。
アセンブラ? なに軟弱なことを言ってんの?
0663名無しさん@お腹いっぱい。2006/03/15(水) 11:41:00
なんで厨房はすぐ機械語とかアセンブル言語とか言うんだろう
ハッカーぽい響きがあるせいか?
0664名無しさん@お腹いっぱい。2006/03/15(水) 11:49:32
レベルが高い回答が来ないからレベルが低くなる。

というわけで、レベルが低い、といっている人はどーぞ、そのレベルの高さを示してください。
そのレベルの低さを示すのが関の山だと思うけど(w
0665名無しさん@お腹いっぱい。2006/03/15(水) 12:11:16
機械語?レベル低杉
0666名無しさん@お腹いっぱい。2006/03/15(水) 12:12:41
>>665
レベルの意味が違いすぎ
0667名無しさん@お腹いっぱい。2006/03/15(水) 14:00:21
この程度でプロセスの数とか言ってるバカはどっかいけよ
0668名無しさん@お腹いっぱい。2006/03/15(水) 14:09:23
程度問題じゃなくて、シェル内部コマンドだけでできる奇麗な解があるのに、
あとから外部コマンド(sed/tr)を複数使った解を出してきても
エレガントではない。
0669名無しさん@お腹いっぱい。2006/03/15(水) 14:11:53
エレガントじゃ食ってけないよ
0670名無しさん@お腹いっぱい。2006/03/15(水) 14:33:13
コマンドに食わせるデータが大量でない限り、プロセスの数は無視して
いいんじゃないか。この程度なら。
0671名無しさん@お腹いっぱい。2006/03/15(水) 15:10:37
ちょwwwおm、あwwwwエレガントwwっw
0672名無しさん@お腹いっぱい。2006/03/15(水) 16:19:54
プロセスの数が少ない = エレガントとは限らんだろ
内部コマンドだけでできればどんなに複雑でもエレガントとか言いはじめるやつとは議論にならんな
0673名無しさん@お腹いっぱい。2006/03/15(水) 17:11:31
そりゃ、食うのがやっとの人にきれいなシェルを期待しちゃダメだな。
0674名無しさん@お腹いっぱい。2006/03/15(水) 17:13:14
>>673
シェルって言うなクズ。
0675名無しさん@お腹いっぱい。2006/03/15(水) 18:05:21
プロセス数とか、外部コマンドとか以前の問題として、
>>651 って動かないわけよ。
sedの中で \( \) とすべきところを ( ) で書いてるから。

動作確認してから書き込むのは最低限の回答者のルールだよ。
確かに、こんなシェル書いてちゃ食えないよな。

(先に言っとくけど「シェルってゆーな」の突っ込みは禁止。そろそろ言葉に慣れろ)
0676名無しさん@お腹いっぱい。2006/03/15(水) 18:06:00
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
0677名無しさん@お腹いっぱい。2006/03/15(水) 18:07:55
そろそろシェルスクリプトって言えるようになれよ。
0678名無しさん@お腹いっぱい。2006/03/15(水) 18:13:52
んー、食わせるデータが大量になると、シェルスクリプトじゃいかんかなと
思うこともあるね。sed,awk,grep,findあたりを良く使いまわすんだけど、
重くてしょうがなくなる。まあ高速化は二の次になっちゃうんだけど、
RubyかPerlあたりのスクリプト言語を使うことを、最初に検討した方がいいかも
知れん。

0679名無しさん@お腹いっぱい。2006/03/15(水) 18:58:31
シェルってゆうな。くず。
0680名無しさん@お腹いっぱい。2006/03/15(水) 19:02:06
カレントディレクトリにある、大文字のファイル名を
すべて小文字のファイル名に直したいのですが、
どういうUNIXを打てばいいでしょうか?
0681名無しさん@お腹いっぱい。2006/03/15(水) 19:03:27
こういうの流行ってるの?
0682名無しさん@お腹いっぱい。2006/03/15(水) 19:11:18
シォル
0683名無しさん@お腹いっぱい。2006/03/15(水) 19:30:44
>>680
宿題は自分で考えろ。
0684名無しさん@お腹いっぱい。2006/03/15(水) 19:38:08
「UNIXを打つ」ってすげぇ表現だな
0685名無しさん@お腹いっぱい。2006/03/15(水) 19:51:03
>>680
OS名を書かないと、答えられる人は誰もいないと思います。
0686名無しさん@お腹いっぱい。2006/03/15(水) 19:52:50
いやむしろどのUNIXにするかってい(ry
0687名無しさん@お腹いっぱい。2006/03/15(水) 20:08:51
シェルスクリブトが長すぎるから、略すバカが出るんだよ
で前スレでこの板公認の略称が決まらなかったっけ?
0688名無しさん@お腹いっぱい。2006/03/15(水) 20:26:18
シェルス にしよう
0689名無しさん@お腹いっぱい。2006/03/15(水) 20:33:44
スクリブトってゆうな。クズ。
0690名無しさん@お腹いっぱい。2006/03/15(水) 20:49:26
「UNIXを打ちながらこう考えた…………
…………とかくにシェルは書きにくい。」
06916422006/03/15(水) 21:35:03
エレガントじゃ無くてすいませんw
趣味でか触ってないのでいつまで経っても初級者から成長しないんですよね。

で、
sed 's/$/ /g' L1 | tr -d "\n" | sed 's/\([0-9]+\)[^0-9]/\1\n/g'
で★キマリッ★
0692名無しさん@お腹いっぱい。2006/03/15(水) 22:43:25
シェルをあぽーんキーワードにすると、、、、、、、、、
0693名無しさん@お腹いっぱい。2006/03/15(水) 23:04:30
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
シェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェルシェル
0694名無しさん@お腹いっぱい。2006/03/15(水) 23:27:45
あぽーんってゆうな。クズ。
0695名無しさん@お腹いっぱい。2006/03/16(木) 03:04:28
シェ…しぇ…シェ………シェ…
…… … …… ……………… … …… … … …シェ… …
0696名無しさん@お腹いっぱい。2006/03/16(木) 03:15:05
>>692
シェイシェイ
0697名無しさん@お腹いっぱい。2006/03/16(木) 12:52:44
春休み期間中なのにもかかわらず平日に書き込みが減るのは、
馬鹿回答をしているのが馬鹿学生じゃなくて馬鹿社会人だからだろうな。
0698名無しさん@お腹いっぱい。2006/03/16(木) 13:35:34
学生でもなく社会人でもありませんよー。
0699名無しさん@お腹いっぱい。2006/03/16(木) 13:48:35
シェルスクリプトで変数TODAYにyymmddを設定したいのですが、
どうやるのか判りません。

yyyymmddの8桁日付なら`date +%Y%m%d`で設定できるのですが、
yymmddで6桁日付だとどうやるのでしょうか?

awkのsubstrという関数を上手く使えればできそうなのですが、

awkの使い方をいまいち理解できてないので・・・・
申し訳ありませんがよろしくお願いします。
0700名無しさん@お腹いっぱい。2006/03/16(木) 13:53:02
>>699
man strftime
0701名無しさん@お腹いっぱい。2006/03/16(木) 14:07:40
>>699
date +%y%m%d でできるよ。yは小文字。
ただし、%yは2000年問題の関係で推奨されない。

>>700
質問欲嫁。この場合 man strftimeしても解決しないだろ。
07026992006/03/16(木) 15:08:28
701

ありがとうございました。
できました。
すごく単純なコマンドで出来たんですね(汗)

0703名無しさん@お腹いっぱい。2006/03/16(木) 15:50:11
>ただし、%yは2000年問題の関係で推奨されない。

そんなの用途しだいでしょ。
昔のデータなんか扱わないようなところとか。

>質問欲嫁。この場合 man strftimeしても解決しないだろ。

man date するとたいてい strftime(3) を参照と書いてないか?
0704名無しさん@お腹いっぱい。2006/03/16(木) 15:58:12
>>703
man dateしたなら、すでに %y のことは書いてある。
strftime(3)のことは書かれていなかった。
0705名無しさん@お腹いっぱい。2006/03/16(木) 15:58:44
strftime(3)にでてるじゃん
誰だよ,解決しないとか言ってる奴
0706名無しさん@お腹いっぱい。2006/03/16(木) 16:02:45
>>705
strftimeはC言語の関数。
そっちに載っていたとしても、回答としては不適切。
もっとそのものズバリのman dateがあるのだから。
なんでわざわざ遠い回答するの?
0707名無しさん@お腹いっぱい。2006/03/16(木) 16:03:27
「man hoge」厨は、よく確認せずにカキコするため、回答をハズしやすいの法則。
0708名無しさん@お腹いっぱい。2006/03/16(木) 16:06:31
ごめんdateコマンドだったか
0709名無しさん@お腹いっぱい。2006/03/16(木) 16:07:43
おそらく >>700 は、dateコマンドでも +%y が使えることを知らず、
そういうことがやりたいなら strftime() を使って、
C言語でプログラムを書け、と言いたかったんじゃないかな。
それが、実は date +%y で簡単にできてしまうことがわかり、
突っ込まれたので暴れているわけだ。
0710名無しさん@お腹いっぱい。2006/03/16(木) 16:08:24
>>706
FreeBSD で man date を確認すると
% を使った詳細の書式は載っていない。
man strftime ならたぶんどの OS でも載ってるっしょ。
0711名無しさん@お腹いっぱい。2006/03/16(木) 16:09:06
>>709
>>703
07127002006/03/16(木) 16:14:40
>>709
>>703>>705 はおれじゃないよ。
0713名無しさん@お腹いっぱい。2006/03/16(木) 16:14:58
>>710
いきなり man strftimeしても、質問者にとっては、
それがdateで使えるとはわからない。
載っているのはC言語なので、最初の数行読んで「違う」「ガセネタだ」と
思うだろう。

man strftimeとか言わずに、
>>701 みたいに date +%y%m%d と、直接回答するのが
もっとも価値が高い回答ではないだろうか。
0714名無しさん@お腹いっぱい。2006/03/16(木) 16:21:42
この板最近回答者への要求きついね。
回答控えようかな。
0715名無しさん@お腹いっぱい。2006/03/16(木) 16:47:32
FreeBSDでman dateでこれだけ載ってりゃ十分じゃ内科医
--------------------------------
yy 西暦の省略表現です。西暦の 10 の位と 1 の位です (1989 年なら 89、06 なら 2006)。
〜中略〜
使用例
以下のコマンド:
date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"
は、下のような表示を行ないます。
DATE: 1987-11-21
TIME: 13:36:16
0716名無しさん@お腹いっぱい。2006/03/16(木) 16:52:51
だから今のコンテキストでは、%y が載ってないのはクズ
0717名無しさん@お腹いっぱい。2006/03/16(木) 16:59:42
確認してみたが、SolarisとLinuxのman dateでは %yの他、%の書式解説が載ってるぞ。
遠回しなman書いてるFreeBSDはクズ。
0718名無しさん@お腹いっぱい。2006/03/16(木) 17:01:55
手元の Solaris9 の man にはないようだが……。
0719名無しさん@お腹いっぱい。2006/03/16(木) 17:06:55
date(1)には書式文字列はstrftime(3)に載っているっ
て書いてあるけど。strftime(3)は遠回りでもなんでも
なく、直球だと思う。まぁ、date(1)にstrftime(3)を
見ろと載っていると一言あってもいいけど。

An operand with a leading plus (`+') sign signals a user-defined format
string which specifies the format in which to display the date and time.
The format string may contain any of the conversion specifications
described in the strftime(3) manual page, as well as any arbitrary text.

つーか、質問者以外が難癖つけすぎ。
0720名無しさん@お腹いっぱい。2006/03/16(木) 17:08:10
というか、Solarisの場合manは非標準で、標準はアンサーブックとかに変わったし、
Solarisスレでは二言めには docs.sun.com読め、なので、manは標準じゃないのだろう。
■ このスレッドは過去ログ倉庫に格納されています