Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

シェルコマンド/シェルスクリプト

【Rocky linux】chronyを使った時刻の設定方法

Rocky Linux 8 : NTP : サーバーの設定 : Server World【Rocky Linux 9】06.chrony設定 #RockyLinux - QiitaRocky Linux 8 NTP時刻同期( Chrony )クライント / サーバー 設定 - インフラエンジニアのメモ帳 このあたりを見ながら設定すればOK特に一番上のser…

【HTCondor】使用するcpuを投入時の状態に応じて動的に変更する

3~8個のcpuのうち空いているものを使いたい時は以下のように書けばいいらしい executable = foo.exe # Only interested in slots with 3 to 8 CPUs if they # are static or dynamic. If a slot is partitionable, # make sure it has at least 3 cpus. requ…

【Rocky linux】dnfでパッケージをインストールする方法

自分が使ったことがあるlinuxはDebianとかUbuntuくらい Rocky linuxは初めてパッケージのインストール方法も上記のものとは違って少し面食らった以下のページを参考にした dnf コマンドの使い方メモ #Linux - Qiita dnf install tmux使ってないけどメモ # イ…

【HTCondor】ジョブがHOLDになったときに詳細な理由を調べたい時、ジョブの現状を知りたい時

一番簡単なの condor_qただ、これだけだと全容が掴めないし、他のユーザーのジョブも見れないことがある(HTCondorのversionによって変わる)ので もっと詳しくみたい時 condor_q -all -nobatchが便利 表示される項目の説明 ID ジョブのID、condor_rmでジョブ…

【HTCondor】投稿するサブミットファイルの書き方例

サブミットファイルの例はHTcondorの公式ページに載ってるSubmitting a Job — HTCondor Manual 24.2.1 documentation # Example 1 # Simple HTCondor submit description file # Everything with a leading # is a comment executable = myexe arguments = S…

【シェルコマンド】メモリーの使用量をモニターするコマンド

# 搭載されてるメモリー量を知るには freeコマンドを使う hオプションは人が読みやすい単位にしてくれる free -h# 今の使用量をモニターするには vmstat -t 2 2秒ごとに使用しているメモリが表示される tオプションで時刻も表示される それぞれの意味につい…

【シェルコマンド】ある日時 data1 とある日時 data2の差分を計算したい

ある日時 data1 とある日時 data2の差分を計算したい date +%sで現在時刻のunix時間が表示されるなので日時をunix時間に換算してから引き算すればOK ある日時をunix時間に直すには date --date "12/21 00:00" +%sみたいな感じそれぞれ数字として引き算して、…

【ffmpeg】動画をN倍速にエンコードし直したい

ffmpegは動画のエンコードをするのに便利です 参考 ffmpegを使って動画の再生速度を変えてみる - 脳内メモ++ 再エンコードせずに fps を変更する | ニコラボ コマンドメモ 動画を2倍速にするには ffmpeg -i input.mp4 -vf setpts=PTS/2 -af atempo=2 outpu…

【シェルコマンド】xargsを使ってコマンドの出力を別のコマンドに渡して実行したい

初期設定 以下のような内容のファイルがあるとします % cat hoge.txta 1 xb 2 yc 3 z awkを使うと任意の列のデータを取り出せます $2と$1に変えるとa, b, cになるはず awk '{print $2}' hoge.txt 123 ファイルの中身を使ってディレクトリを作成したい この結…

【シェルコマンド】grepした結果をmoreで見た時に色をつけておく方法

cat "hoge.txt" | grep -B 10 --color=always "AAA" | more みたいな感じでmoreをしても色をつけていられる grep -B 10 はAAAがヒットした場所に前の10行も同時に表示してくれる -Aだとヒットした後の10行とか less -R みたいなのもあるらしいけど、自分の環…

【gnuplot】enhanced というターミナルオプションについて

set terminal x11 の代わりに set terminal x11 enhanced と打ってみると、色々なことができる! 例えば set xlabel "x^2"set ylabel "y^2"set title "{/Symbol W}"plot x**2 lw 3set terminal pdf enhanced fsize 10set output "hoge.pdf"rep とか打ってみ…

【シェルスクリプト】for文で1ずつ変化しない場合

過去記事 【シェルスクリプト】よく使うテンプレ的な何か - Bus errorとSegmentation faultに困ったら見るブログ for文とかwhile文は↑を参照 これ以外にも for*1doecho $idone という書き方のfor文がある。 これの最後の1周ごとに行う処理を i+5 とかに変え…

【シェルコマンド】splitで長いファイルをn行ごとに分割する

Linux | 容量, 行数指定でファイル分割(split) & 分割ファイルを結合(cat) - わくわくBank split -l [行数] [ファイル名] [prefix] で、指定した行数ごとにファイルを分割できます 分割されたファイルの名前は特に指定していないと、 xaa xab xac xad・・・ …

【シェルコマンド】basenameとdirname

dirnameでディレクトリ名だけを取り出す % dirname /usr/local/bin/fftwf-wisdom/usr/local/bin basenameでファイル名だけ取り出す % basename /usr/local/bin/fftwf-wisdom fftwf-wisdom

【シェルコマンド】echo $PATHとecho $pathの違い

使っているシェルはzshです $ echo $PATH/sw/bin:/sw/sbin:/usr/local/root/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin: $ echo $path/sw/bin /sw/sbin /usr/local/root/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin のように、パス同士の区切…

【シェル】憎きプロセスをkillしたくなったら取る方法

ps -xkill [PID] [PID]はkillしたいプロセスのプロセスIDps -xで[PID]を確認する ------ どこかにメモった気がしたけど見つけられなかったので追記 もしプロセス名にhogeと入っているジョブを一気にkillしたいときは以下のようにすればいい kill `ps -ef | g…

【awk】コマンドで疑似乱数を使ってみる

それでは表題の通り、awkコマンドで疑似乱数を使ってみる srand()でまず初期シードを与えて、rand()で乱数を出力させるsrandに何も引数を与えないと、現在時刻が初期シードになる randの返り値は0から1の実数0から100までの整数の乱数が欲しい場合は int(100…

【awk】10を底とするlogで出力したいとき

awkにはcosやらsinやらexpやらintやらよく使われる関数が一通り揃っている しかし今回10を底とするlog xが欲しかったが、そのままでは出てこなかった 調べてみたら awk '{print log(x)/log(10)}' hoge.txt でよかった なんでこうなるかは、高校2年生で習いま…

【シェルスクリプト】ファイル名に空白文字が入っていても処理する方法、trで置換してみる

for i in `ls *.txt` という感じで、カレントディレクトリにあるtxtという拡張子のファイルを一気に取り扱うことが多々ある しかしそのファイル名に空白文字が含まれていると、for i in の下で分解されたときに2つのファイル名だと勘違いされて実行されてし…

【Emacs】コード内の文字の置換

c-x hm-x replace-string[before word][after word] って打てば置換できる。 control + hで全体を選択m-xのmはメタキー、おそらくエスケープでおーけーreplace-stringは適時tabを押せば候補を表示してくれる ■ 参考 meadow(Emacs)で基本的な文字置換 | シド…

【シェルコマンド】trコマンドはsedよりお手軽に置換できる(ただし1文字置換に限る)

自分はコマンドで置換を最初にやろうと思ったときに、sedを教えてもらった色々と便利なんだけど、覚えることがかなりあるので使うときは毎回調べないといけない・・・ そんなときに見つけたのがtrというコマンド使い方は至ってシンプル tr "hoge" "foo" < fo…

【シェルコマンド】あるファイルの中にある空白行やある文字が入った行を削除したい

sedの基本的な使い方 cat hoge.txt | sed -e "s/AAA/BBB/g" 基本的にはこんな感じの使い方 ここでAAAやBBBにどこかのPATHが入っているとエラーが出る"s/AAA/BBB/g"の真ん中にある/とPATHの/の区別がつかないからコーテーションマークで区切ればうまくいくか…

【シェルコマンド】#と%を使ってファイル名の一部や拡張子を取り出す

#(シャープ)と%(パーセント)をシェルスクリプトで用いるとファイル名の一部のみを取り出したり、拡張子を取り出したりできて便利 %は後ろから #は前から 一致してるかどうか探す。マッチしてる部分を取り除いて返す。 分かりやすいように使用例 $ FILENAME=h…

【シェルコマンド】touchで空のファイルを作成する + 最終更新日を更新する

(元記事 2012/02/09) iPad touch ではないです。 touchコマンドでは今まで、空のファイルを作成するコマンドだと思ってたけど実は全然違う使い方をするみたい・・・・ touch hoge.txt で、hoge.txt の最終更新日時を更新できる オプションで、任意の時間を指…

【シェルスクリプト】小数点以下を切り捨てたい

(元記事 2012/01/22) $ echo 123.567 | sed s/\.[0-9,]*$//g123 または $ VAL1=123.456$ VAL2=${VAL1%.*}$ echo $VAL2123 最近まで使いこなせなかったけど、%と#を使うと色々と便利例えば、拡張子のみを取り出したり、拡張子を外した名前部分だけを取り出し…

【awkを使って】データのある行を取り出したいとき

(元記事 2012/01/21) 次のようなデータファイルがあるとする。 % cat hoge.dat1 1.1 2.22 2.2 3.33 3.3 4.44 4.4 5.55 5.5 6.66 6.6 7.77 7.7 8.88 8.8 9.99 9.9 10.1010 10.10 11.11 これのある行(例えば3行目)だけ表示させたいときは次のように打てばよい …

【シェルコマンド】beep音を出したい

(元記事 2012/01/01) 実行時間が長いシェルスクリプトなどを使う際に、終わった後にbeep音などで知らせてくれると便利。 echo -e "\a" 研究室でカップラーメンを作るときに echo -e "start\a" ; sleep 180 ; echo -e "tabegoro\a" とか使えるかも・・・ ただ…

【シェルスクリプト】よく使うテンプレ的な何か

(元記事 2012/01/01) シェルスクリプトの書き出し #!/bin/sh 以後、shスクリプトでよく使うものににいてまとめる(テンプレ) シェル変数の定義 スペースを空けないことに注意 hoge=HOOOOOOGEEEEEE for文 for [変数] in [リスト]do[繰り返し内容]done ;を使っ…

【シェルスクリプト】cutコマンドについて

(元記事 2012/01/01) cutコマンド $ cut [option] [filename] オプション -b バイトで切り出す# hoge.datの10バイト目から30バイト目まで切り出す$ cut -b10-30 hoge.dat # hoge.datの40バイト目までを切り出す$ cut -b-40 hoge.dat # hoge.datの5バイト目か…

【シェルコマンド】rsyncの使い方

(元記事 2011/12/19) 便利コマンドrsyncの使い方などについてまとめる。何をするコマンドか簡単に書くと、指定したディレクトリの内容を同期してくれるコマンドわざわざcpコマンドでオプションを使ったりしてシェルスクリプトを書く必要はない まずはversion…