자주 잊어버리는 명령이나 메모
7925 단어 ShellScript쉘 스크립트리눅스
파이프로 연결된 명령의 반환 값
명령 실행 결과를
ture
, false
, error
$ ll | grep sample > /dev/null 2>&1; echo $?
결과가 있으면 0이 아니면 1이 반환됩니다.
오류의 경우
2
$ ll aaaa > /dev/null 2>&1; echo $?
2
반환값
0
, 1
, 2
의 의미$ ls --help
# *snip*
Exit status:
0 if OK,
1 if minor problems (e.g., cannot access subdirectory),
2 if serious trouble (e.g., cannot access command-line argument).
# *snip*
참고 : h tp // w w. 그래. 네 t/b㎉g/2011/09/09/532. HTML
포트 스캔
$ nmap -p 22 192.168.33.10 -P0
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-03 04:35 UTC
Nmap scan report for 192.168.33.10
Host is up (0.00076s latency).
PORT STATE SERVICE
22/tcp open ssh
Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds
STATE
desc
open
열린
닫힌
닫힌
filtered
몰라
firewalld 설정
$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https
$ sudo firewall-cmd --permanent --zone=public --add-port=8000/tcp
$ sudo firewall-cmd --reload
ssh 개인 키 변환
putty 설치
$ brew install putty
pem -> ppk
$ puttygen sample.pem -O private -o sample.ppk
ppk -> id_rsa
$ puttygen sample.ppk -O private-openssh -o id_rsa
ssh-keygen
$ ssh-keygen -f ./id_rsa -t rsa -C 'example@com' -N ''
$ ssh-keygen -f ./id_rsa -t rsa -b 4096 -C 'example@com' -N ''
ssh-add
$ eval `ssh-agent`
$ ssh-add ~/.ssh/id_rsa
$ ssh-add -l
공개키를 분실했을 때
개인 키에서 공개 키 생성
$ ssh-keygen -y -f id_rsa > id_rsa.pub
~/.ssh/config를 작성하는 방법
Host 任意の接続名
HostName ホスト名
User ユーザー名
Port ポート番号
IdentityFile 秘密鍵のPATH(~/.ssh/hoge.key)
# sshd サーバと応答確認する間隔
ServerAliveInterval 60
$ chmod 600 ~/.ssh/config
참고 : ssh 연결 시간 초과를 방지합니다.
발판을 통과해야 하는 경우에도 단일 ssh 명령으로 대상 서버에 연결
~/.ssh/config
# ホスト間認証の方式を設定する。sierraでデフォルトで無効にされているDSA鍵を有効にする
HostKeyAlgorithms +ssh-dss
# 秘密鍵を読み込むタイミングでエージェントに自動的に鍵を登録させる
# 毎度ssh-addコマンドを叩く必要がなくなる
AddKeysToAgent yes
# エージェント転送を有効にする
Host *
ForwardAgent yes
# 踏み台サーバーの情報
Host gateway
HostName [踏み台サーバーのホスト名 or IPADDR]
User sample_user
# 接続するサーバーの情報
Host sample_server
HostName [接続先サーバーのホスト名 or IPADDR]
User sample_user
Port 22
IdentityFile ~/.ssh/id_rsa
ServerAliveInterval 60
ProxyCommand ssh gateway nc %h %p
쉘 스크립트에서 실행 중인 스크립트의 절대 경로 얻기
SCRIPT_DIR=$(cd $(dirname $0); pwd)
echo $SCRIPT_DIR
참고 : [bash] 실행 스크립트의 절대 경로 얻기
ps 명령으로 프로세스 ID만 추출
$ ps -e | grep 'php' | awk '{print $1}'
출력 결과의 개행도 제거하는 경우
$ ps -e | grep 'php' | awk '{print $1}' | tr '\n' ' '
일괄 대체
현재 디렉토리 아래의 확장자가 php 파일에있는
namespace app\modules\sample
를 namespace application\modules\sample
로 모두 다시 작성하는 경우$ grep -lr 'namespace app\\modules\\sample' ./*.php \
| xargs sed -i -e 's/namespace app\\modules\\sample/namespace application\\modules\\sample/g'
git submodule
.gitmodules
[submodule "sample-repo"]
path = sample-repo
url = repositoryのアドレス
ignore = dirty
추가
$ git submodule add repositoryのアドレス ./submodules/sample-repo
init
$ git submodule init
update
$ git submodule update
풀
$ git submodule foreach git pull origin master
언어별 문자열 이스케이프 방법
php - preg_quote
preg_quote('\()[].*')
파이썬 - re
import re
result = re.escape('\()[].*')
Google 크롬에서 JSON 성형
콘솔에서 다음을 실행
resp = '<JSONデータ>';
console.log(JSON.stringify(resp,null," "));
Chrome에서 fullscreen caprue(Mac)
F12에서 Inspector를 열고 command+shift+P
검색 창에서 "Capture full size screenshot"을 선택
ERROR 1840 (HY000) at line 34: @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empty.
mysql> reset master;
Reference
이 문제에 관하여(자주 잊어버리는 명령이나 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Esfahan/items/fcfe1e5e90b3dedb86f2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)