お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2011-08-31 20:16:41

harutin
新しいメンバ
登録日: 2011-08-31

コマンドのオプションで+を使えません

初めて投稿させていただきます。

現在、勉強のためにテキストログインでUbuntuを使っています。

オプションで+nを指定できるコマンド
tail や sort 等で、たとえばカレントディレクトリにsfileというファイルがあるとして

$ sort +1 sfile

と打つと

sort: オープン失敗: +1: そのようなファイルやディレクトリはありません

と表示され、期待通りの結果になりません。

解決方法がわかる方がいらっしゃいましたら教えてください。
今、「改定 新Linux/UNIX入門(林晴比古 著)」のp.110辺りを参照しています。

わかる範囲で環境を書きます。
Ubuntu 11.04
日本語入出力対応としてjfbtermとuim-fepをインストールしています。

宜しくお願いします。

オフライン

 

#2 2011-08-31 20:37:44

favicon.ico
メンバ
登録日: 2010-09-06

Re: コマンドのオプションで+を使えません

こんにちわー

sort コマンドの方は Wikipedia より

古いバージョンの sort では、+1 オプションを付けると、第二カラムのデータを使ってソートする(+2 では第三カラム)。これは現在ではサポートされていないが、その代替として -k オプションを同じ目的に使用できる。

tail コマンドは以下の形式は有効ですよ

tail -n +10

オフライン

 

#3 2011-09-01 10:09:42

harutin
新しいメンバ
登録日: 2011-08-31

Re: コマンドのオプションで+を使えません

さっそく、教えていただきありがとうございます。

sortもtailも教えていただいた形式でオプション指定すれば、期待通りの動きになりました。

質問時に挙げた書籍では

$ tail +6 smpfile | head -4

$ sort +1 sfile
で動くと書いてあったのですが、これは古いバージョンの話だったんでしょうか?
2010年改定版なんですが…

それともRedHat系かDebian系かで違いがある??

とにかく解決しました。
ありがとうございました。

オフライン

 

#4 2011-09-01 11:54:53

si
メンバ
From: hokkaido kitami, jp
登録日: 2007-01-15

Re: コマンドのオプションで+を使えません

>それともRedHat系かDebian系かで違いがある??
sl6 (RHEL6互換OS)でも同様でした。
man には、+ k 両方記述有りますが、--help には出てきません。

>2010年改定版なんですが…
おお元が古い、この手の本では、良く見かけます。
因みに、http://linuxjm.sourceforge.jp/html/gnumaniak/man1/sort.1.html
(Updated: 7 October 2002)では、「obsolete な古い形式」と記述されています。
これは、「将来的には廃止する予定」の意味のようです。

オフライン

 

#5 2011-09-01 13:09:36

harutin
新しいメンバ
登録日: 2011-08-31

Re: コマンドのオプションで+を使えません

確かに私の環境でもman sortを見ると、
+POS1の説明はあるものの、「obosolete な古い形式」という記述がありました。

この記述があるオプションは気をつけたほうが良いんですね。
ありがとうございました。

オフライン

 

Board footer

Powered by FluxBB