#author("2023-08-04T02:46:18+09:00","default:ogiwiki","ogiwiki") [[日本語テキスト処理基礎講座2023]] *コマンドラインの基礎 [#rdaab3bd] **WSLとUbuntu[#k2b6b2c9] -UbuntuをWSL上で動かす --WSLとは: [[Windows Subsystem for Linux>https://learn.microsoft.com/ja-jp/windows/wsl/about]] --Ubuntu: https://jp.ubuntu.com/ ***WSLとUbuntuのインストール [#ucd40159] -[[WSL を使用して Windows に Linux をインストールする>https://learn.microsoft.com/ja-jp/windows/wsl/install]] ***起動 [#wf3fed74] -スタートメニューからUbuntuを起動 --Macの人は代わりにターミナルを起動 **最低限知っておきたいコマンド [#l2d4c3a9] ***はじめに [#qb199492] -コマンドの使い方を確認するには --コマンド --helpで使い方 --man コマンドでマニュアル -便利な機能 --TAB補完 --ヒストリ(↑↓) ***サンプルテキスト [#n7bb0c44] -[[日本国憲法 JPConstitution.txt(UTF8)>https://www.dropbox.com/scl/fi/ahwe6wd78u3rusqy6j4yl/JPConstitution.txt?rlkey=cwnsj0vtj7e6nnl5je40qmd0m&dl=1]] ※下のコマンドをターミナルにコピペしてダウンロード wget "https://www.dropbox.com/scl/fi/ahwe6wd78u3rusqy6j4yl/JPConstitution.txt?rlkey=cwnsj0vtj7e6nnl5je40qmd0m&dl=1" -O JPConstitution.txt -[[こころ kokoro.txt(Shift_JIS)>https://www.dropbox.com/s/r89ahi6goxy5a2c/kokoro.txt&dl=1]] wget "https://www.dropbox.com/s/r89ahi6goxy5a2c/kokoro.txt&dl=1" -O kokoro.txt ***ファイル操作関連のコマンド [#hba42de3] -pwd -ls -cd -mkdir -mv -cp -rm -wget -unzip ***テキスト処理関連のコマンド [#c0600481] -echo -less -head -tail -wc -cut -sort -uniq -grep -sed -nkf :文字コード変換 --インストール sudo apt install nkf ---インストール(Mac) brew install nkf nkf -S -w8 kokoro.txt |less nkf -S -w8 --overwrite kokoro.txt ***テキストエディタ [#af7d367b] -vi :昔からのエディタで癖が強い -nano :割と普通(だけどショートカットキーが) -code :VSCodeで開く ***標準入出力とパイプ [#qfb28871] -> :ファイルなどに処理結果を出力 ->> :追加出力 -< :ファイルなどから入力 -| :出力を次のコマンドにつなぐ ***WSL関連(Windows) [#h66c337b] -Explorerでwslと打つと、今いるフォルダをカレントディレクトリにしてUbuntuのターミナルが開く -Explorerなどで\\wsl$と打つとUbuntuのファイル(ルート)が開ける -UbuntuのターミナルからWindowsのコマンドが呼べる **MeCabとUniDic [#cba3f0e9] -MeCabのインストール sudo apt install mecab --Mac brew install mecab -UniDicのダウンロード --[[現代書き言葉UniDic>https://clrd.ninjal.ac.jp/]] wget https://clrd.ninjal.ac.jp/unidic_archive/2302/unidic-cwj-202302.zip unzip unidic-cwj-202302.zip -d unidic-cwj --[[旧仮名口語UniDic>https://clrd.ninjal.ac.jp/unidic_archive/2203/UniDic-202203_60b_qkana.zip]] wget https://clrd.ninjal.ac.jp/unidic_archive/2203/UniDic-202203_60b_qkana.zip unzip UniDic-202203_60b_qkana.zip mv 60b_qkana unidic-qkana cp unidic-cwj/dicrc unidic-qkana/ -動作確認 mecab -v echo "ゼレンスキー大統領" | mecab -d unidic-cwj echo "井ノ上たきな" | mecab -d unidic-cwj mecab -d unidic-cwj JPConstitution.txt | less ***短単位解析 [#v8785a83] mecab -d unidic-cwj -Ochamame JPConstitution.txt > JPConstitution_morph.txt mecab -d unidic-qkana -Ochamame JPConstitution.txt > JPConstitution_morph2.txt -d 辞書を置いたディレクトリの指定 -O 出力フォーマット(dicrcに指定あり) -- -Ochamame :以前の茶まめの出力形式 -- -Ounidic :以前のUniDicの出力形式 --指定しないと全部の列が出力される ***解析結果の処理 [#hbf30625] -接続詞だけ grep 接続詞 JPConstitution_morph.txt -固有名詞だけ(旧仮名UniDicでないと解析エラー多) grep 固有名詞 JPConstitution_morph.txt grep 固有名詞 JPConstitution_morph2.txt -副詞だけ検索して集計 grep $'\t副詞' JPConstitution_morph.txt |sort |uniq -c -発音形出現形だけ cut -f 10 JPConstitution_morph.txt **参考 [#z4efe01c] -[[言語処理100本ノック>https://nlp100.github.io/ja/]] -[[とほほのUnix/Linux入門>https://www.tohoho-web.com/wwwunix.htm]] -[[とほほのBash入門>https://www.tohoho-web.com/ex/shell.html]]