screen
查看当前screen列表 screen -ls
查看当前是在 screen 中还是真·终端里面 echo $STY
, 如果回显为空就在真·终端,否则会有 screen id 显示
新建screen终端 可以直接输入 screen , 不过推荐使用 screen -R newName
这样可以创建一个名为 newName 的screen终端, 并且 -R 会检查是否有同名的终端, 而 -S 则不会
恢复detached screen: screen -r [pid/name]
更标准的用法应该是: screen -rd [pid/name]
这样先detach, 再attach。因为有些时候这个session是attached状态
C-a 控制命令
当前终端界面下, ctrl+a
将进入等待命令的状态, 此时
- 输入
d
会保存会话并后台运行 - 输入
[
进入 copy/scrollback 模式,可以滚动查看之前终端输出的历史。按 esc 退出此模式
tar
-c
Create tar or gz/bz/xz(if with -z/-j/-J)-x
extract-f <filename>
-v
verbose-C
change to directory-t
list
i.e.
Create tar: tar -cf abc.tar abc
Extract tar: tar -xf abc.tar
Create gz: tar -czf abc.tar.gz abc
Extract gz: tar -xzf abc.tar.gz
Extract gz to a specific dir: tar -xzf abc.tar.gz -C <some_path>
add new user
sudo adduser {{username}}
groups {{username}}
# view user’s groups
sudo usermod -aG sudo {{username}}
# add new user to sudo group
curl
curl -OnL <your_link>
# -O output name as the remote file. -L follow redirects. -n use .netrc to authorize
curl 还可以断点续传: curl -C - -OL <your_link>
# -C continue at offset. - means the last offset
fdisk du df
- fdisk -l
- du -sh
- df -h
lsof
- sudo lsof -i:8080
- sudo lsof -i tcp:8080
- sudo lsof -i udp:80
比如:
|
|
有时显示的是:
|
|
这里的 http-alt 可能就代表 8080, 可以通过 grep http-alt /etc/services
查看
systemctl
systemctl status abc.service systemctl cat abc –no-pager systemctl list-dependencies abc –no-pager
useful shell cmd
function proxy_off(){ unset http_proxy unset https_proxy unset all_proxy unset ftp_proxy unset rsync_proxy unset HTTP_PROXY unset HTTPS_PROXY unset FTP_PROXY unset RSYNC_PROXY echo -e “proxy off.” }
function proxy_on(){ export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com” export http_proxy="ip:port” export https_proxy=http_proxy export all_proxy=http_proxy export ftp_proxy=http_proxy export rsync_proxy=http_proxy export HTTP_PROXY=http_proxy export HTTPS_PROXY=http_proxy export FTP_PROXY=http_proxy export RSYNC_PROXY=http_proxy echo -e “proxy on.” }