kshで以下の処理を行いたいのですが、bshで使えるオプションが使えないようです。どうすれば??
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ファイル ./test の内容は以下のとおりです。
test1
30
50
12
test2
60
12
01
test3
***
20
***
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(1)例えば "test2"という文字列を含む行と、合わせて下3行を拾って表示させたい時は、どのようにコマンドを打てばよいのですか?
test2
60
12
01
のように表示させたい。
(2)あらかじめ、とりだしたい情報がn行目にあるとわかっている時に、
取り出したい行を複数指定して表示させるにはどのようにコマンドを打てばよいですか?
No.3ベストアンサー
- 回答日時:
追記
> kshで以下の処理を行いたいのですが、bshで使えるオプションが使えないようです
各コマンドでの機能は、各コマンドに依存する問題で、シェルの違いは関係ありません。
AIXではPOSIXという規格に準じたgrepがインストールされています。
LinuxではGNU grepというGNUが独自拡張したgrepがインストールされています。
なので、(それぞれのシェルがインストールされているとして) AIXでbashを動かしても、grep -B は使えないし、 linuxでkshからgrep -Bとすると正常に動作します。
なお、シェルには外部ファイルを使用しない内蔵コマンドというものがあり、これは(Bash独自の内蔵コマンドがkshで使えないなど)シェルの違いに影響を受けます。
No.2
- 回答日時:
-Aとか-BとかはGNU grep独自の拡張なので、AIX等のgrepでは使えません。
もしかしたら別名(ggrep)とか、別ディレトリとかにGNU grepがあるかもしれませんが、環境依存のことなのでなんとも言えません。
解決策の一つはGNU Grepを自前でビルドすることです。
$HOME/binあたりにインストールしましょう。
もう一つは、sed,awk,perl等のスクリプトで同等の処理をすることです。
例えば、awkなら
awk '/test2/ {a=3+1;} a>0 {print ; a--}' < test
で test2とそれに続く3行を表示します。
(2)は↓にある方法が有効なはずです。
http://oshiete1.goo.ne.jp/qa5810772.html
No.1
- 回答日時:
以下、linuxのgrepのオプションですが、使えないのですか?
-C [NUM], -NUM, --context[=NUM]
NUM で指定した行数 (デフォルトは 2) だけ、パターンにマッチした行の前後の行も表示します。
取り出す行がわかっているなら、
http://ambiesoft.ddo.jp/blog/archives/328
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) VScodeでpythonプログラムの関数を実行したい 2 2022/07/13 19:24
- Visual Basic(VBA) Excle VBA Findメソッドについて 3 2022/07/15 13:56
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
- Windows 10 renameコマンドでファイル名からアンダースコアを消す方法 5 2023/04/24 13:33
- その他(プログラミング・Web制作) Linuxについて質問です。 引数に指定されたアクセスログのファイルからアクセス数が多い順に上位3つ 1 2023/02/03 03:46
- MySQL 次の時間帯の勝率の合計を求めるSQL文 1 2023/07/04 17:12
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- JavaScript [再掲]指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードについて 1 2023/05/10 15:09
- Visual Basic(VBA) VBA ステータスバー DoEvents 1 2023/03/30 12:22
- Google Drive Googleドライブでのファイルの移動 2 2022/11/01 14:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マイクロソフト公式の方法で、...
-
アイコンに、四角い枠が出来て...
-
Microsoftのページだけ全て「申...
-
ゼロからのOS自作入門について
-
Windows11 システム通知音がも...
-
MS-DOS 6.22のダウンロード
-
Raspberry Pi 3 A+ ブラウザ遅い
-
windows11でクイックスキャン等...
-
エクスプローラのアクティブウ...
-
Windows11更新累積プログラムの...
-
windows11 きれいなロック画面...
-
フォルダロック
-
Windows Media Playerを開くと...
-
windows11におけるファイルの並...
-
Windowsアップデートしたらタス...
-
Windowsの古いゲーム(32bit OS...
-
Windows11でXboxのコントローラ...
-
Windows11の画面の色が薄いので...
-
USBメモリの表示する「残り時間」
-
Windows(11)ってもうゴミなんで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
scpコマンドでリモートサーバの...
-
DOSコマンドでのワイルドカ...
-
rcpコマンドについて、教えて!
-
Illustratorのデータをまとめて...
-
telnet,rlogin,rshの違いってな...
-
IBM漢字コードのSJIS変...
-
FTP接続中のコマンド実行結果を...
-
GNOME端末の起動 及び コマンド...
-
AIX ksh利用 grep 検索で マ...
-
【ターミナル】MacBookにディー...
-
lsコマンドで表示するファイル...
-
Windows10のRegSys32に登録され...
-
別名でリンク先を保存。
-
属性変更できないです。
-
AIXの勉強方法について
-
ログイン、ログアウト時にコマ...
-
linuxのreadコマンドについて
-
cactiでグラフが表示されない
-
Macの Terminal でのエラーと...
-
Solaris rmコマンドをシェルで...
おすすめ情報