検索
検索
Sakakibara Hiroshi / 榊󠄀原 寛
文書の表示
以前のリビジョン
トレース:
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
= [[コマンド]] / LM: [2024-09-02 21:31:29] ~~NOCACHE~~ OS に関係なく利用できるコマンドに関して. ---- ====== - pandoc ====== ===== - 概要 ===== pandoc はテキストフォーマットを ,別のフォーマットに変化する為のツール.markdown から HTML やら PDF やらに変更したり出来る.[2023-09-10] 時点で入力できるリストは以下の通り. 0:21 [0] skk@skk-T14% pandoc --list-input-formats commonmark creole docbook docx epub fb2 gfm haddock html jats json latex man markdown markdown_github markdown_mmd markdown_phpextra markdown_strict mediawiki muse native odt opml org rst t2t textile tikiwiki twiki vimwiki ===== - MarkDown → PDF ===== ==== - 概要 ===== github などの影響で MarkDown が各所で使われているが,ある程度整形された状態で印刷しようと考えると,Windows 編集ツールは有料のものしか見つからなかった[2023-09-10].一時期 Typora を使っていたがいつの間にか有料になっていたけど,お金払うほどしょっちゅう印刷するわけではないので,pandoc で済ますことにする. ==== - インストール ==== Linux なら apt で探す.FreeBSD なら pkg または ports でインストール.ports の場合,大きなソフトウェアなので少し時間がかかる. ==== - MarkDown の亜種 ==== [2023-11-15] MarkDown の種類がどれくらいあるのか分からないが,少なくとも入力フォーマットとして,以下が存在しているらしい. markdown markdown_github markdown_mmd markdown_phpextra markdown_strict markdown_github は pandoc 2.0 以上だとあまり推奨されてなさそうで,gfm というのが使えるようだ. 標準の markdown だと水平線の表現が半角の ''***'' のようなのだが,redmine wiki と同様の ''---'' にしたい場合,github markdown が良さそう.''pandoc -f markdown_github'' として入力フォーマットを指定すると良い. ==== - LaTeX エンジンの選定 ==== pandoc を使って MD -> PDF と変換する際は,emacs の org-mode などと同様,一度 LaTeX に変換してから PDF を生成する.LaTeX エンジンは色々存在するが,man の --pdf-engine を見ると,以下のエンジンを指定できることが分かる. pdflatex|lualatex|xelatex|wkhtmltopdf|weasyprint|prince|context|pdfroff 慣れているものを利用すれば良いと思うが,platex がないのでどれでも良かったので,取り急ぎ,今回は lualatex をインストールすることとした. apt-get install texlive-luatex ==== - 変換コマンド ===== 変換は以下: pandoc hoge.md -o hoge.pdf --pdf-engine=lualatex -V documentclass=bxjsarticle -V classoption=pandoc bxjsarticle が昔で言う jarticle のようなスタイルファイル.classoption は何を意味しているのか分かってない. ==== - 字下げされない ==== デフォルトのままだと,段落の行頭が字下げがされていない.[2023-09-10] 時点で,pandoc が提供する以下のテンプレートファイルにて行頭字下げしないように指定されている. /usr/share/pandoc/data/templates/default.latex 以下の部分をコメントアウトすれば字下げされるようになる. <code latex> \IfFileExists{parskip.sty}{% \usepackage{parskip} }{% else \setlength{\parindent}{0pt} \setlength{\parskip}{6pt plus 2pt minus 1pt} } </code> ファイルを自分のホームディレクトリなど好きな場所に置き,--template でファイルを指定. pandoc hoge.md --template=default.latex -o hoge.pdf --pdf-engine=lualatex -V documentclass=bxjsarticle -V classoption=pandoc ==== - ページの余白がでか過ぎる ==== デフォルトのままだと,余白が多き過ぎて印刷した際に紙がもったいない.default.latex 内の \begin{document} の前あたり,行数だと 350 行目あたりに以下の設定を追記し,余白を狭くした. <code latex> \setlength{\topmargin}{15mm} \addtolength{\topmargin}{-1in} \setlength{\oddsidemargin}{20mm} \addtolength{\oddsidemargin}{-1in} \setlength{\evensidemargin}{15mm} \addtolength{\evensidemargin}{-1in} \setlength{\textwidth}{170mm} \setlength{\textheight}{254mm} \setlength{\headsep}{0mm} \setlength{\headheight}{0mm} \setlength{\topskip}{0mm} </code> ==== - タイトルなどを入れる [2023-09-13] ==== LaTeX のタイトルや著者などの情報は,markdown の最初の方に以下のように書いておけば設定される. <code markdown> --- title: タイトルだよ author: skk date: \today figureTitle: "図" tableTitle: "表" listingTitle: "コード" figPrefix: "図" eqnPrefix: "式" tblPrefix: "表" lstPrefix: "コード" --- </code> 参考ページ:https://yurkth.hateblo.jp/entry/pandoc-markdown ==== - 定義の記述 [2023-09-14] ==== LaTeX における ''\begin{description}'' ''\item[]'' を利用した定義は,MarkDown で以下のように記述する. <code> 何かのアイテム : : * 定義1 : * 定義2 </code> 一行目の '':'' の後ろには,全角の空白を置いている.これを置くことで,定義の文章を次の行に改行できる.改行がいらなければ,削除したら良い. 二行目三行目は実際の定義の文章を書いている.''*'' を置くことで箇条書きになる. もし,アイテム部分がすごく長くなる場合,enumitem という LaTeX パッケージが利用できるがまだ試していない為,そのうち試したい.[[https://latex.org/forum/viewtopic.php?t=19838|参考]] ====== - imapfilter ====== imap コマンド経由で,lua 言語でフィルタリングを行うコマンド. -> [[imapfilter]] ====== - nkf ====== * unix/mac/windows の改行コード変換 * --unix, --mac, --windows オプション * 上書きしたいとき * --overwrite オプション<code> % nkf -w --overwrite hoge.txt </code> ====== - zip コマンド ====== ===== - (基本)zip ファイルを作成する ===== <code> % zip hoge.zip foo/*.jpg </code> ===== - ディレクトリ情報は無視して,ファイルのみアーカイブする ===== <code> % zip -j hoge.zip *.jpg </code> ===== - zip ファイルの中身を表示する ===== <code> % zip -sf hoge.zip </code> ====== - rsync ====== ====== - dhclient ====== * dhclient が勝手に、resolv.conf を書き換えるのをやめたいができない。 * しょうがないので、以下を加えて回避。 <code> # vi /etc/dhcp/resolv.conf prepend domain-name-servers 192.168.1.1; </code> ====== - subversion ====== [[subversion]] 参照 ====== - convmv ====== * ファイル名の文字コード変更コマンド <code> convmv -r -f 元のエンコーディング -t 変更先エンコーディング --notest </code> * -f,-t: euc-jp, sjis, utf8 などを指定 * --notest: テストせずに,実行. * 参考ページ * http://www.geocities.jp/code_air_edge/HP/convmv.html ====== - ffmpeg ====== * [[ffmpeg]] ====== - latex2rtf ====== * freebsd, linux ともに,標準のコマンドでは日本語に対応していない. * http://tauros.ams.eng.osaka-u.ac.jp/mt/jp/archives/2007_12.html ここに,日本語変換フィルタが公開されている. * euc-jp のみの対応なので,utf などの文章は気をつけること. ====== - ssh port forward ====== * localhost:1234 -> 192.168.1.22:5901 <code> $ ssh -L 1234:192.168.1.22:5901 192.168.1.22 -l skk </code> * VNC の場合,ポート番号は 5900 + VNC サーバのディスプレイ番号.よって,5900+1 とか. ====== - unison ====== 2 つのマシン間でファイルの同期をとるためのコマンド. * [[unison]] ====== - nslookup 使い方 ====== * 指定ドメインの mx を探す <code> > set type=mx > tsukune.org </code> * 指定ドメインの ns を探す <code> > set type=ns > tsukune.org </code> ====== - iso 取り扱いツール ====== ===== - isomaster ===== * GUI ベース. ====== - cab file 取り扱いツール ====== ===== - cabextract ===== ===== - lcab ===== * .cab ファイル作成 ====== - find ====== ===== - find で空白ファイル名の空白を削除 [2023-10-12] ===== 中身は理解してない. <code bash> % find . -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \; % **find / -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \; </code> 引用元: * https://www.linuxadictos.com/ja/como-eliminar-espacios-nombres-archivos.html ===== - find でファイル削除 ===== linux, freebsd ともに,'{}' が指定したファイル名と置換される部分なので,別の引数は必要に応じて'{}'の前とか後とかにつける. ==== - linux ==== <code> % find . -inode 11111 -ok rm '{}'\; </code> ==== - freebsd ==== <code> % find . -inum 1111 -exec ls '{}' \; % mv `find . -inum 1111 -print` hoge.exe </code> ====== - for を使っての複数ファイル処理 ====== [2024-08-08] for を使って複数のファイルに対して,一括処理をしたい場合は,僕は以下のように書くことが多い. <code bash> % for HOGE in `ls` > do > zip $HOGE.zip $HOGE > done </code> ただしこの方法は,ls の出力する空白が区切り文字として扱われるため,ファイル名に空白が入っていると上手く処理できない. [[https://ugcj.com/%E3%82%B7%E3%82%A7%E3%83%AB%EF%BC%88bash%EF%BC%89%E3%81%A7%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%81%AE%E4%BB%A3%E3%82%8F%E3%82%8A%E3%81%AB%E6%94%B9%E8%A1%8C%E5%8C%BA%E5%88%87%E3%82%8A%E3%81%A7for/|ここ]]を参考に,以下のように区切り文字を改行にしてみたら,問題なく動作するようになった. <code bash> % IFS=$'\n'; for HOGE in `ls` > do > zip $HOGE.zip $HOGE > done </code> [2024-09-02] Ubuntu 附属の /bin/sh だと,この方法は上手く動作せず./usr/bin/zsh では期待の動作.bash では未確認. ====== - gnuplot ====== ---- このページへのアクセス 今日: {{counter|today}} / 昨日: {{counter|yesterday}} 総計: {{counter|total}}
コマンド.txt
· 最終更新: 2024/09/02 21:31 by
skk
文書の先頭へ