tabで入力補完
↑↓で入力履歴呼び出し
^q縺?Ctrl+qを押すという諢?蜻?
半角/全鐔??キー 日本鐔??を切り替える(画面右臀??にもIMEがある、win+spaceの場合も)
ls -la ディレクトリ内を表示
ls -a 隠しファイルを含み表遉?
(GUI)ctl+h 隠しファイルを表示(メニューでもチェックで可・??
pwd 現ワーク中のディレクトリを表示
cd ../ 上に臀??がる
clear 表示内容を消す
mv beforeName.text afterName.txt ファイル名変譖?
rm -R ディレクトリ名 削除、ファイル縺?rm a.txt
ls -l > hoge.txt >結果を上書き
ls -l >> hoge.txt >>結果を追鐔??
printenv 環藹??変数表遉? printenv xで特藹??表示
grep aaa -rl ./ カレントディレクトリ以下からファイル内縺?aaaが含まれるファイルを検邏?
grep -R $keyword *.py .pyファイルからkeywordを検邏?
sudo - 一般ユーザが特権操作する sudo省逡?
sudo -i rootに切り替える
sudo -iu <username> 特権ユーザ切り替え
sudo -iu <username> 特権ユーザ切り替え
テキスト選択
Shift↑or↓ で鐔??全臀??
home(+fn)で鐔??頭、end(+fn)で鐔??末移動
nano text.txt 作成あるいは開縺?、nano簡単かも、画面臀??コマンド縺?ctrl+?すればいい
コマンドM-U縺?Esc+u
ctrl+k で・??行削髯?
$()
ドル鐔??号と括弧で囲んだコマンドは藹??行結果を出力し展開
echo "現在のディレクトリは、$(basename $(pwd))です"
パッククォートは囲った中身をコマンドとして藹??行しその軆??果を出力
echo "今日は、`date +%m月%d譌?`です。"
変数縺?$()とバッククォートを使ってワンライナ繝?
■viエディ繧?sudo apt install vim
vi text.txt ファイル臀??成あるいは開縺?
vi縺?2つ・??αのモード
┣コマンドモード
┃┗コロンモード(exモード:祖先のラインエディタ・??
┗入力モード
https://docs.oracle.com/cd/E19253-01/816-3946/editorvi-5/index.html
viのコロンモードコロンモードのコマンドは、こ縺?w、q、q!、x、$5... - Yahoo!知恵鐔??
Escでコマンドへ抜けるhttps://docs.oracle.com/cd/E19253-01/816-3946/editorvi-5/index.html
viのコロンモードコロンモードのコマンドは、こ縺?w、q、q!、x、$5... - Yahoo!知恵鐔??
┗挿蜈? i (入力モード)
ファイル名を指定し保存 :w new_file_name.txt
強制臀??存のコマンド :w!
保存せず終了 :q 強制軆??了 :q!
:10 10行目に移動
:set number 行数を表示
:num 現在のカーソル臀??置鐔??数を表示
クリップボードをペースト iで挿入モードに入り Shift+Insert
vi内でコピペ:yコマンドのコピー、pコマンドのペーストなので臀??記の觸??にする
2yw ならカーソルから2単語コピーされます
3yl ならカーソルから3文字コピーされます
y$ ならカーソルから行末までコピーされます
p ならカーソルの藹??ろにペーストされます
$ カーソルを行末縺?
G カーソルを最終行行頭縺?
- 前行の鐔??頭縺?
Enter 次鐔??の鐔??頭縺?
w カーソルを1語進める
b カーソルを1語戻す
Ctrl-d 1/2画面臀??縺?(down)
Ctrl-u 1/2画面臀??縺?(up)
Ctrl-f 1画面臀??縺?(foward)
Ctrl-b 1画面臀??縺?(back)
/文字列(Enter要) 文字列検邏?(スラッシ繝?)
笏?n 次の觸??索文字列縺?
┗N 前の觸??索文字列へ 保存して軆??了 :wq 保存して強制軆??了 :wq!コマンド集 viコマンド集 (ritsumei.ac.jp)
■環藹??変数は臀??記の順で探す、なので藹??要なら下位のものを上にコピ繝?
~/.bash_profile
~/.bash_login
~/.profile
source ~/.bash_profile 編集したbashrcをbash_profileに藹??映させる
bashrc縺?bash起動豈?、bash_profileはログイン觸??
source ~/.bash_profile 編集したbashrcをbash_profileに藹??映させる
bashrc縺?bash起動豈?、bash_profileはログイン觸??
Linuxコマンド【 ssh-keygen 】認証用の鍵を生成 - Linux入門 - Webkaru
$ ssh-keygen
パスフレーズは空でも設藹??上は問題ないが塩っ觸??が足らん気が
パスフレーズは空でも設藹??上は問題ないが塩っ觸??が足らん気が
秘密鍵・??id_rsa)と公開鍵・??id_rsa.pub)が生成され、ホームディレクトリに臀??成される
/home/yourID/.ssh/id_rsa
/home/yourID/.ssh/id_rsa.pub.
公開鍵をSSHサーバや外部サービスに登録する等して使う、秘密鍵は譏?かさないこ縺?
SSHクライアント縺?proxy越えの設定方觸?? (mydns.jp)
プロキ繧?binのインス繧?
$ sudo apt-get install connect-proxy
ホーム縺?sshキーができているの縺?
$ vi ~/.ssh/config
Host oketsu
HostName 1.XXX.XXX.XXX
User hoge
IdentityFile ~/.ssh/id_rsa.pub
LocalForward 5912 localhost:5902
ProxyCommand connect-proxy -H proxy.syanai.in:8022 %h %p
Host github.com
HostName ssh.github.com
Port 443
IdentityFile ~/.ssh/id_rsa.pub
IdentityFile ~/.ssh/id_rsa.pub
ProxyCommand connect-proxy -H proxy.syanai.in:3128 %h %p
User githoge
$ chmod 600 .ssh/config
下記のように藹??行すると、ログイ繝?/GITできます。
$ ssh oketsu
$ git clone githoge@github.com:kusogitry.git
$ git clone githoge@github.com:kusogitry.git
$ id 所属グループ等を表示
$ uname -n;id;date
■NW設藹??
$ uname -n;id;date
■NW設藹??
/etc/resolve.conf
nameserver 88.88.88.88
nameserver 88.88.88.88
~/.profile とか .bashrc とか
export http_proxy=http://proxy/3128
/etc/apt/apt.conf
ip addr
ip addr
OSI藹??照モデ繝?
| レイヤ繝? | 名称・??日本鐔??) | 主な役蜑? | 主なプロトコル・鐔??譬? |
|---|---|---|---|
| レイヤ繝?7 | アプリケーション層 | アプリケーションごとの固有の通信鐔??定 | HTTP / SMTP |
| レイヤ繝?6 | プレゼンテーション層 | 文字コードやデータ形蠑?など、情報の表現方觸??を規定 | MIME / SSL |
| レイヤ繝?5 | セッション層 | 通信の開始・維持・軆??了など、通信セッションの管理 | ソケット |
| レイヤ繝?4 | トランスポート螻? | データ転送の信頼性や誤り訂正などを規定 | TCP / UDP |
| レイヤ繝?3 | ネットワーク層 | 異なるネットワーク間の通信方觸??を規定 | IP / ICMP |
| レイヤ繝?2 | データリンク層 | 同一ネットワーク内での通信鐔??定 | Ethernet / PPP |
| レイヤ繝?1 | 物理螻? | ビット列を電觸??信号など物理的な信号に藹??觸??する規定 | 1000BASE-T / 802.11 |
プライベートIPアドレスのクラス分け
| クラ繧? | アドレス軆??蝗? | CIDR表鐔?? |
|---|---|---|
| クラ繧?A | 10.0.0.0 ~ 10.255.255.255 | 10.0.0.0/8 |
| クラ繧?B | 172.16.0.0 ~ 172.31.255.255 | 172.16.0.0/12 |
| クラ繧?C | 192.168.0.0 ~ 192.168.255.255 | 192.168.0.0/16 |
■スクリプト実行
nohup python3 main.py & ユーザディレクトリ縺?nohup.outログが実行完了時に臀??度に臀??存される(重いと思繧?れる)
nohup python3 main.py > /dev/null 2>&1 & ログなし
nohupはバックグラウンド実行、ログアウトしても実行続ける
jobs ジョブリストを出す
fg ジョブ番号 フォアグラウンド実行に藹??える
bg ジョブ番号 バックグラウンド実行に藹??える
ctrl c キャンセ繝?
ctrl z 中断・??再開できる)
crontab -e 編集
crontab -l 確鐔??
sudo service cron restart 再起動
systemctl status cron 稼働の確認
30 12 * * 0 python3 /home/app_hoge/main.py
cronはバックグラウンド実行縺?nohup &を含めると藹??行されない、多分
top プロセ繧?/CPU/メモリ軆??の情報、こちらで動いていれ縺?ps縺?statがsでも問題ない、多分
ps aux
ps f -A プロセスをツリーで表示し便蛻?
kill -l
kill -SIGCONT プロセス番藹??
sudo less /var/log/cron.log
sudo tail -f /var/log/cron.log
sudo less /var/log/syslog
sudo tail -f /var/log/syslog
■ディスク系
ext4 一般的なデスクトップやファイルサーバ向け、16TBまで、ファイルシステムチェックで遅い
xfs 高負闕?IOで大容驥?データ処理向け、ジャーナルなし、ファイルシステムチェックを短縮
論理ディスク・??パーティショ繝?
/dev/sda1, /dev/sda2, /dev/sdb, /dev/sdf等、数藹??はパーティション番号、数藹??がないとパーティショ繝?1つだけ
ディスク拡張
/dev/sda1, /dev/sda2, /dev/sdb, /dev/sdf等、数藹??はパーティション番号、数藹??がないとパーティショ繝?1つだけ
ディスク拡張
lsblk
df -Th
du -sk * | sort -nr
#xfsの場合
pvdisplay
pvresize /dev/nvm
vgdisplay
lvdisplay
lvextend -l +100%FREE /dev/vg001/lv001
xfs_growfs /opt
#ext4の場合
apt autoclean キャッシュあるがインストールされていないdebファイル削髯?
apt autoremove 必要な縺?なったパッケージ削髯?
disk -l /dev/nvm パーティション情蝣?
growpart /dev/nvm 1 指定パーティションの容驥?拡張
resize2fs /dev/nvm ファイルシステム拡張
容量調謨?
/var/cache 縺?apt-get clean, yum cleanで觸??す程度縺?
容量調謨?
/var/cache 縺?apt-get clean, yum cleanで觸??す程度縺?
■swapをrootからvarに移動
free
swapon -a
swapを無効化
swapoff -v /swap.extended
swapをvarに移動
mv /swap.extended /var
/etc/fstabからswapのエントリを/varに書き觸??え
cat /etc/fstab
swapを有効化
swapon -a
確鐔??
free -h
■ライブラリアップデート
sudo apt update
apt list --upgradable | grep mysql
lsofコマンド入門 #Linux - Qiitasudo apt install mysql-client=6.6.6-0ubuntu2.1~99.99.9
sudo apt install mysql-client-core=6.6.6-0ubuntu2.1~99.99.9
窶?
dpkg-l | grep mysql
窶?
dpkg-l | grep mysql
■WSL2
https://qiita.com/zakoken/items/61141df6aeae9e3f8e36
https://qiita.com/SAITO_Keita/items/148f794a5b358e5cb87b
WSLインストール藹??はネットワークの設定が必要なら
例) apt updateが出来ない
WSL のバージョンはユーザの設定依存のため、version 2 (WSL2) が必要ならコマ ンドプロンプトで以下のコマンドを実行
wsl --set-default-version 2
アプリからWSL起動、CMDやPowershellならwslで起動 wsl --shutdown で停豁? 設藹??したユーザディレクトリにアクセスする(それぞれ別の場所)
窶? WSLから縺? /mnt/c -> /mnt/c/Users/ore/Desktop/github
窶? WINから縺? \\ws/$ -> \\wsl.localhost\Ubuntu-22.04\home\ore
NW設藹??: WSL2のデフォルトでは起動するたび縺?Windowsホスト縺?DNS設藹??を基にして自動的縺?/etc/resolv.conf を生成するが、サーチリスト縺?Windows側から引き継がれないうえ、諢?図しないタイミングで勝手に再生成されてしまうので停止する
nano/etc/wsl.conf
下記追鐔??
[network]
generate ResolvConf = false
DNS設藹??
sudo unlink /etc/resolv.conf
sudo nano /etc/resolv.conf
以臀??のように設定
nameserver 172.27.117.yy
nameserver 172.27.117.xx
search in-xxx.com dns search list.xxx.com
proxy設藹??
nano-/profile
以臀??の設定を既藹??プロキシの臀??に追加
export http_proxy="http://proxy:3128"
export https_proxy="http://proxy:3128"
apt 縺? proxy 設藹??
sudo /etc/apt/apt.conf
以臀??のように設定
Acquire: http: Proxy "http://proxy:3128",
Acquire: https: Proxy "http://proxy:3128";
WSL2を抜け、Windowsコマンドプロンプト縺?Ubuntu を再起動
ore@unco-017:/mnt/c/Users/ore$ exit
rootでキーを作成する縺?github上でユーザがrootとなる
sudo adduser aaa
sudo usermod -aG sudo aaa
sudo nano /etc/wsl.conf 下記を追鐔??しwsl再起動
whoami
[user]
default-aaa
echo $HOME
cd-
mkdir.ssh
ssh-keygen sudoだ縺?githubログイン時に名前がrootになってしまう
/home/aaa/.ssh/id_rsa
cd- /home/aaa
nano/home/aaa/.ssh/config
Host github.com
HostName ssh.github.com
Port 443
ProxyCommand connect-proxy -H proxy:3128 %h %p
user git
chmod 600 config
eval "$(ssh-agent-s) sshエージェント起動
ssh-add/home/aaa/.ssh/id_rsa sshエージェントに鍵を登骭?
ssh-add確鐔??
初回は接続yesをし縺? Warning: Permanently added (ssh.github.com): 443 (ED25519) to the list of known hosts.
wal-d Ubuntu-22.04 -u root パワシェル縺?rootユーザに切り替える場合
wal.exe-shutdown パワシェルでシャットダウンや再起動の場合
パッケージの更譁?
sudo apt update && sudo apt upgrade -y
WSL環藹??設藹??
cd /home/ore
縺?/rootを表す(/homeでない)
sudo apt install connect-proxy
/rootにキーを生成
ssh-keygen
passphrase xxXX
cat /root/.ssh/id_rsa
nano/root/.ssh/config
Host github.com
HostName ssh.github.com
Port 443
ProxyCommand connect-proxy -H proxy: 3128 %h %p
user omeco
chmod 600 config
シンボリックリンクを生成する
cd /home/ore
In-s-/ssh
Githubサイトのユーザ設定縺?pub keyを登録し、承鐔??する
cd /mnt/c/Users/ore/Desktop/github
git clone git@github.com:oreore/xxx.git
ping github.com で通信確認ができる
curl https://sdk.cloud.google.com | bash
exec -1 $SHELL
gcloud auth application-default login
URLコピペ
gcloud config configurations list
gcloud config configurations create kuso
gcloud config set account xxx@xxx.com
gcloud config set project project-x
gcloud config configurations activate kuso
gcloud auth login
pyenv install 3.13.0
pipenv-python 3.13.0
gcloud components update
gcloud components install cbt(BigTable例)
(パスフレーズを省略できる) eval $(ssh-agent); ssh-add-/.ssh/id_rsa
tfenvをマニュアルインストー繝? https://github.com/tfutils/tfenv
tfeny install 1.00.0
tfenv list
tfenv use 1.00.0
export TF_CLI_ARGS_plan="-parallelism=50"
export TF_CLI_ARGS_apply="$TF_CLI_ARGS_plan"
環藹??変数を変更した場合縺? source ~/.bash_profile を藹??映
■SPF
spfレコードはメールを送信する際、送信元サーバ縺?DNS上縺?IPアドレスを比較
自社から藹??引先に送信したメール縺?SPFレコードを設藹??していなければ、相手側のメールサーバで迷惑メールとされ届かない場合も
送信元縺?DNSに送信元IPをSPFレコードに登録する(ドメインをSMTP縺?IPに藹??える?
ドメイ繝? IN TXT v=spf1 ip4:172.16.0.1 -all
(+が省略されているがIP許可、allを認証しないという諢?味・??
送信蛛?SMTPサーバで縺?SPFをチェックせず何でも送菫?
藹??信蛛?MTAにて設定され(SMTPにはトランスファ縺?MTA、デリバリ縺?MDA
spfを使えば先方がspfレコードを登録していなければメールが藹??け藹??れない
postfixやexim縺?SPFをonにする設藹??がある
spfレコードが設藹??されているかを確鐔??
nsookup -type=TXT 調べたいドメイ繝?
■lsofはオープンファイルの略だがネットワークソケットの調譟?
lsofでファイルを開いているプログラムを特藹??する | 晴耕雨読 (tex2e.github.io)
■lsofはオープンファイルの略だがネットワークソケットの調譟?
lsofでファイルを開いているプログラムを特藹??する | 晴耕雨読 (tex2e.github.io)
=============
■VS code
マルチカーソル・??ctrl+shift+↓
[Alt]+クリッ繧? | カーソルを追加 |
[Ctrl]+[Alt]+[↑]/[↓] | カーソルを上下に追加 |
[Ctrl]+[U] | カーソル操作を元に戻す |
[Shift]+[Alt]+[I] | カーソルを行末に追加 |
[Ctrl]+[L] | 行を選択 |
[Ctrl]+[Shift]+[L] | 選択中の文字列と同じものをすべて選択 |
[Ctrl]+[F2] | カーソル臀??置の単語と同じものををすべて選択 |
[Shift]+[Alt]+[→] | 選択範囲の拡大 |
[Shift]+[Alt]+[←] | 選択範囲の縮蟆? |
[Shift]+[Alt]+ドラッ繧? | 矩形選択 |
[Ctrl]+[Alt]+[Shift]+[カーソ繝?] | 矩形選択 |
[Ctrl]+[Alt]+[Shift]+[PgUp]/[PgDn] | 矩形選択 ページ臀??下 |
マルチカーソルを使繧?ないVSCodeはただ縺?VSCodeだ!〜解説編〜 - memo_md (hateblo.jp)
続き
/// BANGBOO BLOG /// - Linux cmd2





