Linuxコマンドでやりたいことをやるためのリンク集


# curl

|オプション|意味|参考サイト|
|:--|:--|:--|
|-X|HTTPメソッドを指定する||
|-H|HTTPヘッダを指定する||
|-d {パラメータ名}={値}|データをPOSTみたいに送る|[curl を使って JSONデータをPOSTする - Takuya71 のぶろぐ](https://takuya71.hatenablog.com/entry/2012/11/10/143415)|
|-v / --verbose|リクエストとレスポンスをを表示する||
|-k / --insecure|証明書チェックしない||
|-s / --silent|進捗の表示をしない|[Curlでリクエスト中の進行状況を表示しない &#124; ex1-lab](https://ex1.m-yabe.com/archives/5102)|
|-sS / --show-error|進捗は表示をしないがエラーは表示する|[curl option 覚え書き - Qiita](https://qiita.com/takayukioda/items/edf371b3566bea64d046)|

```bash
# ヘッダを複数指定する
$ curl -v -H 'Connection: keep-alive' -H 'Content-Type: application/json'  http://www.example.com

# BacklogAPIでプロジェクト一覧を取得する
$ curl -X GET -H 'Content-Type:application/json;charset=utf-8' -d '{"archived":false}' https://{ドメイン}.backlog.jp/api/v2/projects?apiKey={APIキー}

# Kintone REST APIでアプリのレコードを一括取得する
$ curl -X GET -H 'X-Cybozu-Authorization:{「ログイン名:パスワード」をBASE64エンコードしたもの};Content-Type:application/json;charset=utf-8' https://{サブドメイン名}.cybozu.com/k/v1/records.json?app={アプリのID}
```

- [curlコマンドでダウンロードしたい - Qiita](https://qiita.com/ponsuke0531/items/38e6421058364b6f8562)
- [curlのレスポンスをデコードする - Qiita](https://qiita.com/ponsuke0531/items/9f798a9193a347266ff7)
- [Proxy環境下でcurlを実行する | 404 motivation not found](https://tech-blog.s-yoshiki.com/entry/177)
- [APIを使ってエラーになった時の原因記録 - Qiita](https://qiita.com/ponsuke0531/items/9f68e5b54846fdd444eb)
- [URLが空白を含むときは「スペース」と「%20」、「+」のどれを使うべきか？ &#8211; 海外SEO情報ブログ](https://www.suzukikenichi.com/blog/which-shold-you-use-space-20-or-plus-in-urls-containing-space/)





















# jq

|オプションや関数|意味|参考サイト|
|:--|:--|:--|
|`--raw-output`<br/>`-r`|フィルタの結果が文字列の場合、引用符付きのJSON文字列としてフォーマットされるのではなく、標準出力に直接書き込まれる。|[jq Manual (development version)](https://stedolan.github.io/jq/manual/)|
|`tostring`|入力を文字列として出力する|[jq Manual (development version)](https://stedolan.github.io/jq/manual/)|
|`--arg` 変数名 値|jqコマンドに変数を渡す|[シェル芸で使いたい jqイディオム - Qiita](https://qiita.com/nmrmsys/items/5b4a4bd2e3909db161b1)|
|`@csv`|配列をCSVとして出力する|[jq コマンドで JSON を CSV に変換する &#124; Medium](https://medium.com/veltra-engineering/jq-supports-json-to-csv-fb5c951a9575)|
|`sort_by(要素)`|値でソートする|[jqでsortする - Qiita](https://qiita.com/yoza/items/c4c732779a5a10fd3b4c)|

- [jqコマンドをインストール](https://qiita.com/ponsuke0531/items/aa405a0f897cd0a78a8c)
- [RedmineのRest APIをcurlとjqで使ってみたサンプル - Qiita](https://qiita.com/ponsuke0531/items/ece54cd29c222b8ab250)
- [Kintoneのアプリのアクセス権をBashでCSV出力する方法 - 助っ人サービス for kintone](https://www.opentone.co.jp/kintone/archives/1810)
- [jqコマンドで文字化けした時の対応方法 - Qiita](https://qiita.com/ponsuke0531/items/ef006e89002a9b448163)
- [【jq】複数のjsonオブジェクトを1つの配列にする方法 - Qiita](https://qiita.com/eyuta/items/1bfc75cb5475d03787d5)
- [bashでjqを使ってJSONの配列をループさせる - Qiita](https://qiita.com/ryo0301/items/2ac9d11f355f1cf52ea5)
- [【jq】bashでjson配列をループさせる](https://qiita.com/eyuta/items/21c19fd3edb89a91fe12)
- [jqコマンドをでやりたいことをやるサンプル集 - Qiita](https://qiita.com/chovin/items/7f305c88165c0b585516)











# 〇〇を見たい

```bash
# 使っているシェルを確認したい
$ echo $SHELL

# ユーザ名をソートして一覧を見たい
$ cat /etc/passwd | sort
ユーザー名:パスワード(xで表示される):ユーザーID:グループID:何も表示されない箇所は作成時に任意でつけるコメント:ホームディレクトリ:シェルの場所

# グループの一覧を見たい
$ cat /etc/group
# 自分が所属するグループを見たい
$ groups
# 所属するグループを見たい
$ groups {ユーザー名}

# CPUの情報を見たい
$ cat /proc/cpuinfo

# アーキテクチャ(64bitか32bitか的な)を見たい
$ arch
x86_64
$ uname -m
x86_64
$ uname -a
Linux localhost.localhost 2.6.32-276.el6.x86_64 #1 SMP Tue May 29 17:38:19 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
```

- [メモリ不足っぽいからメモリを見たい時に使ってみるコマンド - Qiita](https://qiita.com/ponsuke0531/items/fb81129723eb813a2c77)
- [LinuxのOSを確認する方法 - Qiita](https://qiita.com/ponsuke0531/items/48ec9f001d0b45d077fc)
- [ユーザー一覧を確認する方法](https://www.sejuku.net/blog/54497)
- [CentOSでグループの一覧を表示する - Qiita](https://qiita.com/pugiemonn/items/e5bfdf25a500a0376a57)
- [Linuxの各種スペック確認 - Qiita](https://qiita.com/speedstar18fct/items/dc8f2b97f0be659de65f)
- [CentOSでOSが64bitか32bitの確認方法 | server-memo.net](https://www.server-memo.net/tips/os-bit.html)
- [現在使用されているシェルが知りたい - ITmedia エンタープライズ](https://www.itmedia.co.jp/help/tips/linux/l0358.html)




## ログファイルを流し見したい
```bash
# tailを使う場合
$ tail -f {ログファイル}

# lessを使う場合(スクロールしても画面から見切れた上の部分はもう見れない)
$ less {ログファイル}
# lessで表示して更新部分を見たいときは Shift+F
```

- [tail -fやtailfを使うのはやめてless +Fを使おう - Qiita](https://qiita.com/genreh/items/8d935526571ccfe171ae)

## 使っているポートの一覧を見たい
```bash
$ ss -version
ss utility, iproute2-ss170501
# 名前解決しない(n)で接続全部(a)のTCP(t)とUDP(u)をみる
$ ss -natu
Netid State      Recv-Q Send-Q       Local Address:Port           Peer Address:Port
udp   UNCONN     0      0                        *:68                        *:*
tcp   LISTEN     0      128                      *:111                       *:*

$ netstat --version
net-tools 1.60
netstat 1.42 (2001-04-15)
# 名前解決しない(n)で接続全部(a)のTCP(t)とUDP(u)をみる
$ netstat -natu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        1      0 127.0.0.1:12345             127.0.0.1:1234              CLOSE_WAIT
udp        0      0 127.0.0.1:54321             0.0.0.0:*

# Windowsの場合 : 名前解決しない(n)で接続全部(a)をプロセスIDと合わせて(o)みる
$ netstat -nao
アクティブな接続
  プロトコル  ローカル アドレス      外部アドレス           状態            PID
  TCP         0.0.0.0:80             0.0.0.0:0              LISTENING       4104
  UDP         [::1]:52633            *:*                                    6704

```


|`ss`コマンドのオプション|意味|参考サイト|
|:--|:--|:--|
|`-n`<br/>`--numeric`|サービス名の名前解決を行わない（ポート番号を表示）|[【 ss 】コマンド――ネットワークのソケットの情報を出力する：Linux基本コマンドTips（150） - ＠IT](https://www.atmarkit.co.jp/ait/articles/1710/06/news014.html)|
|`-a`<br/>`--all`|接続待ち状態（LISTEN）のソケットと接続待ち状態にないソケットの両方を表示する||
|`-t`<br/>`	--tcp`|TCPソケットを表示||
|`-u`<br>`--udp`|UDPソケットを表示||
|`-p`<br/>`--processes`|ソケットを使用しているプロセスも表示する|[netstat(ss) -pでポートを掴んでいるプロセス名・PIDを出すにはroot権限で実行する必要がある - Qiita](https://qiita.com/malbare932/items/7d824f670b74e9319ad5)|


```bash:ssコマンドでkillしたいポートをみつける
# ポート番号とSIDの組み合わせはを確認するには、lsofコマンドがいいけどない
$ lsof
bash: lsof: command not found

# そんな時は、sudoでssコマンドを-pオプションつけるといいらしい
$ sudo ss -natup | grep 8080
[sudo] password for ponsuke: 
tcp   LISTEN   0   100   *:8080   *:*   users:(("java",pid=2657,fd=46))

# 見つけたら殺す
$ kill -9 2657
```


## ロケールを見たい
```bash
$ locale
LANG=ja_JP.utf8
LC_CTYPE="ja_JP.utf8"
LC_NUMERIC="ja_JP.utf8"
LC_TIME="ja_JP.utf8"
LC_COLLATE="ja_JP.utf8"
LC_MONETARY="ja_JP.utf8"
LC_MESSAGES="ja_JP.utf8"
LC_ALL=ja_JP.utf8

# ロケールに設定できるのを見たい。大量にあるから日本のだけ。
$ locale -a | grep -i ja
ja_JP
ja_JP.utf8
ja_JP@cjknarrow
ja_JP.utf8@cjknarrow
```

# IPアドレスを確認したい

```bash
# MacOSで使うにはインストールが必要です
$ ip addr show
$ ip route
# インターネットへの接続が必要です
$ curl ifconfig.co
$ curl ifconfig.me
# CentOSで使うにはインストールが必要です
$ ifconfig
# ホスト名を確認したい
$ hostname
# ホストのIPアドレスを確認したい
$ hostname -i
```

- [CentOS 7でネットワークの状態確認するためのipコマンド&#12289;ssコマンドについてメモ - 完熟トマト](http://kanjuku-tomato.blogspot.jp/2014/08/centos-7ipss.html)
- [グローバルIPをcurlで確認 - Qiita](http://qiita.com/kanpou_/items/734b947f5a95109e7bb9)
- [Homebrewでipコマンドをインストールする - Qiita](http://qiita.com/ponsuke0531/items/bb10e2a8614501f51723)













# プロセスを○○したい
```shell:GlassFishのプロセスを見たい
$ ps aux | grep glassfish
# ps 実行中のプロセスを表示する
# psのオプション------------------------
# a 自分以外のユーザーのプロセスも表示する
# u ユーザー名と開始時刻を表示する
# x 制御端末のないプロセスの情報も表示する
```

```shell:殺したい
# 対象のPIDを確認(Linux)
$ top -d1a
# 対象のPIDを確認(Windows)
$ netstat -nao
アクティブな接続
  プロトコル  ローカル アドレス      外部アドレス           状態            PID
TCP .....省略

# 殺す
$ sudo kill -9 {PID}
```

- [topコマンドの使い方 - Qiita](https://qiita.com/k0kubun/items/7368c323d90f24a00c2f)























# 〇〇を設定したい


- [サーバの時間を日本の時間に設定する方法 - Qiita](https://qiita.com/ponsuke0531/items/4227a9f3fbd46c59aa50)
- [ターミナルとかのプロンプト表示を変更する - Qiita](https://qiita.com/ponsuke0531/items/9823645fa22ded5abefd)







# サービスを〇〇したい
```bash
# RHEL6以前
# 自動起動サービスの一覧
$ ls -la /etc/init.d/

# RHEL7以降
# サービスの一覧(状態付き)
$ systemctl list-unit-files --type=service
# サービスの一覧(依存関係と状態付き)
$ systemctl list-dependencies
# 自動起動の確認
$ systemctl is-enabled {サービス}yum
```

- [RHEL6→RHEL7で変更された主要コマンドまとめ | SIOS Tech. Lab](https://tech-lab.sios.jp/archives/rhel6-rhel7change)

# cronにタスクを登録したい

```bash
# cronが設定されているファイルの場所
/etc/crontab
/etc/cron.{d/daily/weekly/hourly/monthly}/配下
# crontab -eで設定した場合
/var/spool/cron/{設定をしたユーザー名}
```

- [はじめてcronにタスクを登録する - Qiita](https://qiita.com/ponsuke0531/items/3e82df8bd8412983cb33)
- [crontab　-eと/etc/crontabでcronを設定する方法 | シドニーで働くプログラマーのBlog(今はIT会社の経営者)](https://blog.mizoshiri.com/archives/215)

# 〇〇を作りたい
```bash:作りたい
# ディレクトリを再帰的に作りたい
mkdir -p ./pon/suke/chovin

# シンボリックリンクを作りたい
$ ln -s {リンク元のディレクトリパス} {リンク先のパス}

# AからZまでの羅列を作りたい
$ echo {A..Z}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
$ echo {G..Q}58
G58 H58 I58 J58 K58 L58 M58 N58 O58 P58 Q58
# 「'」を含めたい場合は「"」で囲えばOK
$ echo WHERE name{1..13}"_kana LIKE '%pon%' OR" 
WHERE name1_kana LIKE '%pon%' OR name2_kana LIKE '%pon%' OR name3_kana LIKE '%pon%' OR name4_kana LIKE '%pon%' OR name5_kana LIKE '%pon%' OR name6_kana LIKE '%pon%' OR name7_kana LIKE '%pon%' OR name8_kana LIKE '%pon%' OR name9_kana LIKE '%pon%' OR name10_kana LIKE '%pon%' OR name11_kana LIKE '%pon%' OR name12_kana LIKE '%pon%' OR name13_kana LIKE '%pon%' OR

```

- [ファイルのハードリンクとシンボリックリンクを作る - ＠IT](http://www.atmarkit.co.jp/ait/articles/1605/30/news022.html)
- [空ファイルを作りたい](https://qiita.com/ponsuke0531/items/aabcc32142906cd9b570#%E7%A9%BA%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E4%BD%9C%E3%82%8A%E3%81%9F%E3%81%84)
- [bashのブレース展開についてまとめ - Qiita](https://qiita.com/ine1127/items/6e5fe80f4a9c64509558)
- [bashで連番を生成する方法(ブレース展開) - Qiita](https://qiita.com/laikuaut/items/642aa329a8d214a2cccb)
- [ファイルサイズを指定してファイルを作る方法 - Qiita](https://qiita.com/ponsuke0531/items/02e041f3a81b01f1b8b4)
- [echoコマンドのブレース展開で便利に連番の文字を作る - Qiita](https://qiita.com/chovin/items/32eeff343ef55539d5a2)

# 〇〇を数えたい
```bash
# 任意の文字列が含まれる行数を数えたい
$ grep -a {任意の文字列} {ファイルパス} | wc -l
## 例) hoge.iniで「key(大文字小文字区別なし)」かつ「;(コメント)で始まらない」行数を数えたい
$ grep -ai key hoge.ini | grep ^[^\;] | wc -l

# 任意の文字列が含まれる行数を数えたい
$ grep -c {任意の文字列} {ファイルパス}
```

- [ファイル内の特定のキーワードの数を数える | 俺的備忘録 〜なんかいろいろ〜](https://orebibou.com/2016/06/linux%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB%E4%B8%8A%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%86%85%E3%81%AE%E7%89%B9%E5%AE%9A%E3%81%AE%E3%82%AD%E3%83%BC%E3%83%AF%E3%83%BC%E3%83%89/)
- [grep -cで行数を数える時の罠](https://rcmdnk.com/blog/2017/04/20/computer-linux-mac-bash-zsh/)


# yumとかaptとか
```bash:yum
# アップデート
$ sudo yum -y update
# パッケージを検索したい
$ yum search {インストールしたいもの}
# コマンドやファイル名でパッケージを検索したい
$ yum provides {ファイル名}
$ yum provides */{コマンド}
# インストールしたい
$ yum install {インストールしたいもの}
# インストールしたものを見たい
$ yum list installed
# yumでインストールしたときのインストール場所を見たい
$ rpm -ql {パッケージ名}
# アンインストールしたい
$ yum -y remove {アンインストールしたのも}
```

- [yumコマンドで既にインストールしたソフトを調べる](http://www.searchman.info/tips/1800.html)
- [yumコマンド一覧 - Qiita](https://qiita.com/kazu56/items/3eeab8884f62be1cf3e6)
- [コマンドが含まれるパッケージをyumコマンドで探す方法 - 一馬力のメモ帳](https://ichibariki.hatenablog.com/entry/2016/12/03/173429)
- [【yum remove】yumで安全にアンインストールする方法 | UX MILK](https://uxmilk.jp/9134)

```bash:apt
# インストールしたものを見たい
$ sudo dpkg -l
# インストールしたい
$ sudo apt-get -y install {インストールしたいもの}
```

- [debファイルを扱うdpkgコマンドの使い方を簡単解説](https://eng-entrance.com/linux-package-dpkg)
- [apt-get - UNIX/Linuxコマンド - IT専科](http://www.itsenka.com/contents/development/unix-linux/apt-get.html)








# ファイラーとかファイルブラウザとかエクスプローラとかFinderとかを開きたい

|OS|コマンド|補足|参考リンク|
|:--|:--|:--|:--|
|Windows|`$ start {パス}`|`start`はディレクトリパスを「/」にしていると怒られるので「\」にします。|[コマンドプロンプト start - [新たなコマンドプロンプト画面を開く]](https://www.k-tanaka.net/cmd/start.php)|
|Windows|`$ explorer {パス}`|下記参照|[エクスプローラーを開く方法まとめ - Qiita](https://qiita.com/shigenobu_c/items/7bf38d094abd5f6f28de)|
|Mac|`$ open {パス}`|||
|CentOS|`gio open {パス}` OR `$ nautilus {パス}`|`$ xdg-open {パス}` は「非推奨です」的なメッセージが出る|[ファイルブラウザをターミナルから起動する方法 - Linuxと過ごす](https://linux.just4fun.biz/?GNOME/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6%E3%82%92%E3%82%BF%E3%83%BC%E3%83%9F%E3%83%8A%E3%83%AB%E3%81%8B%E3%82%89%E8%B5%B7%E5%8B%95%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95)|



```bash:Windows10でエクスプローラを開くコマンドを作る
# explorerはパスを「/」で指定すると[ドキュメント]ディレクトリを開いてきます。だからエイリアスでなんとかしてみます。
# 1. .bash_profileに「open」でエイリアスを追記する
$ vi ~/.bash_profile
# -----以下を追記する----
alias open='explorer /e , $($1 | sed -e "s/^\\/\\([a-zA-Z]\\)\\//\\1:\\\\/" | sed -e "s/\\//\\\\/g")'

# 2. 反映する
$ source ~/.bash_profile
# 3. 「open パス」でエクスプローラーが開く
$ open /c/apps/
```

|explorerコマンドのオプション|意味|
|:--|:--|
|/e|デフォルトの表示設定で開く|




- [Windowsのエクスプローラで目的のフォルダだけを開く：Tech TIPS - ＠IT](https://www.atmarkit.co.jp/ait/articles/0404/03/news019.html)
- [Git Bash on Windowsでパス区切り文字をバックスラッシュに変換する（そしてExplorer.exeでカレントディレクトリを開く） - ごらくらいふ](http://yajamon.hatenablog.com/entry/2017/10/27/083000)













# パスワードを変えたい
```bash
# ponsukeのパスワードを変えたい
$ sudo passwd ponsuke
[sudo] password for ponsuke: 
Changing password for user ponsuke.
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.
```
- [ユーザーのパスワードを変更する | 日経クロステック](https://xtech.nikkei.com/it/article/COLUMN/20060227/230854/)

# 権限を変えたい
```bash
# 構文
$ chmod {アクセス権限} {ファイル名かディレクトリ名}
# 他人に書き込み権限をあげる
$ sudo chmod o+w {ファイル名かディレクトリ名}
# 再帰的に権限を変更したい
$ chmod -R {アクセス権限} {ファイル名かディレクトリ名}
```

- [ファイル／ディレクトリのパーミッション（許可属性）を変更する - ＠IT](http://www.atmarkit.co.jp/ait/articles/1605/23/news020.html)
- [ファイル権限変換ツール | WebTools](https://webtools.yjhm214.com/file-permission)

# 持ち主を変えたい
```bash
$ chown --version
chown (GNU coreutils) 8.22
# 再帰的に持ち主を変更する
$ chown -R {ユーザ} {ディレクトリ}
```

# ディレクトリとファイルを○○したい
[Linuxコマンドを使ってディレクトリとファイルでやりたいことをやるためのリンク集 - Qiita](https://qiita.com/ponsuke0531/items/aabcc32142906cd9b570)





# 環境変数を××したい
```bash
# 設定した環境変数を見たい。
$ printenv {環境変数名}

# PATHを見たい。
$ printenv PATH
/usr/local/bin:/Users/mana/.phpenv/shims:/Users/mana/.phpenv/bin:...:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

# PATHを改行で見やすく区切ってみたい
$ printenv PATH | sed -e 's/:/:\n/g'
/c/app/Java/jdk1.8.0_231/:
...
/mingw64/bin:
/usr/local/bin:
/usr/bin:
/bin:

# 曖昧な名前で見たい。
$ printenv | grep -i oracle

# 環境変数を設定したい(bash)
$ echo 'export {環境変数名}="{環境変数値}"' >> ~/.bash_profile
$ source .bash_profile


# 設定されている区切り文字(IFS)を確認したい : printfのオプション %q-文字列をそのままシェルで利用できるように文字をエスケープ
$ printf "%q\n" "$IFS"
$' \t\n'

```

- [メリーおばさんのLinux講座 Linuxの使い方 - より高度なシェルの使い方 環境変数一覧](https://satowiki.github.io/merry/SEMICMD/SECTION5/section5_2.html)
- [IFS の取り扱い [Bash] &#8211; Site-Builder.wiki](https://site-builder.wiki/posts/8761)
- [printf コマンド &#8211; フォーマット形式で文字列を表示  |  Linuxコマンド.NET](https://linuxcommand.net/printf/)


# iptablesとか認証用の鍵とかSSHでやりたいことをやりたい
- [iptablesでやりたいことをやるためのリンク集 - Qiita](https://qiita.com/ponsuke0531/items/72814242f4ede26c57ab)
- [認証用の鍵でやりたいことをやりたい時にみてみるリンク集 - Qiita](https://qiita.com/ponsuke0531/items/ab437177558056c68147)



# とにかくいろいろ探したい
- [Linuxコマンドでとにかくいろいろ探したい時のリンク集 - Qiita](https://qiita.com/ponsuke0531/items/73817238d5d49a3dd449)

# とあるOSを使いたい
- [CentOSに挑戦する初心者の助けになればいいと思うサイト集 - Qiita](https://qiita.com/ponsuke0531/items/c6fff1452537ad3709e6)
- [hostsファイルの場所 - Qiita](https://qiita.com/ponsuke0531/items/ddde9c80360777a991fc#windows)
- [LinuxのOSを確認する方法 - Qiita](https://qiita.com/ponsuke0531/items/48ec9f001d0b45d077fc)

# コマンドじゃないけど・・・
## Linuxで使えるフォントをインストールしたい
- [IPAexフォント](https://ipafont.ipa.go.jp/node17#jp)

## viエディタですぐ忘れる
|やりたいこと|キー|
|:--:|:--:|
|undo|u|
|paste|p(カーソル行の下にpaste)<br/>P(カーソル行にpaste)|
|現在行を切り取り|dd|
|ファイルの最後に移動|Shift + G|
|検索|/{検索文字}|
|行番号を表示したい|:set number|

- [UNDO（元に戻す）・REDO（元に戻したものを戻す）| vi・vim勉強中。](http://www.webhtm.net/vim/undo.htm)
- [ペースト（貼り付け）の方法](https://eng-entrance.com/linux-vi-paste)
- [viでの行番号の表示方法・非表示方法・デフォルト表示方法](https://eng-entrance.com/linux-vi-setnum#i)

# 困った！
- [MacのVirtualBoxに作った仮想マシンへCentOSをインストールまでしたがインターネットに接続できない時の対応方法 - Qiita](http://qiita.com/ponsuke0531/items/244ac0367c12c62d32c0)
- [line 1: ﻿#!/bin/bash: No such file or directory - Qiita](https://qiita.com/ponsuke0531/items/fda7c32bc9a7547c4e83)
- [find: paths must precede expression - Qiita](https://qiita.com/ponsuke0531/items/bdb6b1a433b47b26f98d)
- [find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional - Qiita](https://qiita.com/ponsuke0531/items/cb9709bb15ace8b5f7eb)
- [Error: Cannot retrieve repository metadata (repomd.xml) for repository: - Qiita](https://qiita.com/ponsuke0531/items/6c84139c0a35e186736a)
- [WARNING: UNPROTECTED PRIVATE KEY FILE! - Qiita](https://qiita.com/ponsuke0531/items/031586eda0281d9ecf6f)
- [bind: Cannot assign requested address - Qiita](https://qiita.com/ponsuke0531/items/78a47aaafd2c82b5e489)
- [grep: warning: recursive search of stdin - Qiita](https://qiita.com/ponsuke0531/items/f5d5e037ba1fce3422b8)
- [Binary file (standard input) matches - Qiita](https://qiita.com/ponsuke0531/items/55843716123c306ac8bf)
- [Failed to set locale, defaulting to C - Qiita](https://qiita.com/ponsuke0531/items/699fcc0eca59f9b10217)
- [i386.rpm is for architecture i386 ; the package cannot be built on this system - Qiita](https://qiita.com/ponsuke0531/items/a1e77e561a179b3132b7)
- [This does not look like a tar archive - Qiita](https://qiita.com/ponsuke0531/items/5d429aef811512463151)
- [tar (child): cannot run bzip2: No such file or directory - Qiita](https://qiita.com/ponsuke0531/items/f2510cd69bad77432de2)
- [curl: (60) Issuer certificate is invalid. - Qiita](https://qiita.com/ponsuke0531/items/224e4cba2a8c8def5987)
- [is not in the sudoers file.This incident will be reported. - Qiita](https://qiita.com/ponsuke0531/items/2e30704be12f797e1c10)
- [resize2fs: Bad magic number in super-block - Qiita](https://qiita.com/ponsuke0531/items/04153c6228516e48a55e)
- [zsh: no matches found: - Qiita](https://qiita.com/ponsuke0531/items/8dd9ba566a13edc03fe2)
- [zsh: parse error near - Qiita](https://qiita.com/ponsuke0531/items/6faad9bde45fdfa68ea0)