質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

2回答

861閲覧

指定した記号が書かれている行数を調べる方法が知りたい

退会済みユーザー

退会済みユーザー

総合スコア0

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2021/08/08 07:48

指定した記号書かれている行数を調べるコマンド、オプションがあれば教えていただきたいです。

例えば
sample.txtのファイルに

「今回のテストはCV率5%だ。
だから改善しなければならない。
下がる可能性はあるが目標は8%だ。
あなたならどうする?」

と行った文章で「%」が書かれている行数なら2行なので
2と表示される方法が知りたいです。

cat,wc,findなどのコマンドで記号(単語)を指定して行数を調べる方法について調べているのですが見つからず困っています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

%が含まれる行数。
grep -c % filename

参考:
%の個数。
grep -o % filename | wc -l

投稿2021/08/08 07:58

編集2021/08/08 07:59
otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2021/08/08 08:12

% なら上記で良いですが、正規表現の特殊記号の場合は、-F も指定します。 grep -F -c . filename
退会済みユーザー

退会済みユーザー

2021/08/09 08:25

お返事ありがとうございます! grep -c % sample.txtで調べることができました! ちなみにこれは#を調べることはできないのでしょうか? grep -c # sample.txt で調べると詳しくは「grep --helpを実行してください」と表示されました。 #は調べることはできないんですね。
otn

2021/08/09 08:43

# はシェルの特殊文字で、(設定次第ですが)コメントの開始を意味しますので、以降はコメントとして無視されます。 シェルの特殊文字は引用符で囲みましょう。これはコマンドの使い方以前の話です。
退会済みユーザー

退会済みユーザー

2021/08/09 08:59 編集

otnさん、ありがとうございます! 引用符というのが必要だったんですね! grep -c '#' sample.txt これで、できました!!
guest

0

すこし調査のやり方に問題があるんじゃないでしょうか。前の質問を理解していれば推測できるはずですが、findコマンドは表題に関係ないので、

cat,wc,findなどのコマンドで記号(単語)を指定して行数を調べる方法について調べている

が既に的を外しかけていることに気づかねばなりません。

しかし、ググるにしても適切なキーワードを最初から過不足なく選定することは確かに難しいです。そんなときは変に当てずっぽでキーワードを選ぼうとするよりも、普通に文章を入力したほうがいい場合もあります。

指定した記号が書かれている行数を調べる方法が知りたい

この質問文のタイトルです。これを単純にgoogleの検索窓に突っ込んで検索しただけでも、ヒントになりそうな記事がたくさんでてきます。とはいえ、最初にエクセル関係の記事がずらずらでてきてじゃまくさいので、これにlinuxを追加すると、

イメージ説明

一番下の記事を見ると有力な手掛かりが得られます。
イメージ説明

「直前のコマンド」でカウントしたい行を出力しておけば、それをwcが数えてくれることがわかる。では「直前のコマンド」はどうあるべきか、もういちど先の検索画面に戻ってみれば、どうやらgrepを調べてみればよさそうだと分かります。両方の結果を総合すれば、otnさんが示しているような答えが得られるわけです。

まとめると、

  • キーワードを当てずっぽに試すぐらいなら文章で検索しろ
  • 最初は大雑把に網をかける感じで検索し、様子を見ながら少しづつキーワードを足せ

そのものずばりの答えを最初から探すというよりは、キーワードの選定をするための予備検索をまず試みることです。

投稿2021/08/08 14:08

KojiDoi

総合スコア13692

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/08/09 08:47

kojidoiさん、調べ方について情報共有ありがとうございます。 私の質問の意図がうまく伝えられておらず申し訳ないです。 おっしゃる意図はわかるのですが、調べたいキーワードをそのまま検索窓口に入れる、空白を入れて「linux」を入れて調べ直してみる。などの調査はやっています。 記事に書かれている内容もひととおり試しているのですが、私が指定した記号が書かれている行数を調べる方法についてわかりやすい記事がないので混乱しています。 私が知識不足のため、しかたないのですが検索結果の記事も初心者向けというよりはある程度のITリテラシーがある人向けに書かれているので理解に苦しんでいます。
KojiDoi

2021/08/09 09:00

>検索結果の記事も初心者向けというよりはある程度のITリテラシーがある人向けに書かれているので理解に苦しんでいます。 上で具体的な記事を二つ示しましたが、これでも理解に苦しむレベルですか?   率直に言って、teratailのQAはさらに初心者向けではないと思いますよ。 このレベルの問答を今後も繰り返されるようだと、反応はだんだん厳しいものになっていくでしょう。「初心者向け」の参考書はあるので、大きめの本屋に行って何冊か立ち読みして、自力でなんとか読みこなせそうだというものを買ってくることを勧めます。その際は著者の異なる本を最低2冊は買ってください。
退会済みユーザー

退会済みユーザー

2021/08/09 09:08

やっぱり、そうなんですね‥‥わかりました!テラテイルの質問は諦めます! KojiDoiさんからもいろいろと教わったのでありがとうございました! それでは失礼します!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問