linux 常用命令:chrt & top & lftp&date&ntpdata&ls -lrt&du&watch&tee&bc&meld&kst2& awk & xargs & lsof
chrt 命令: (改变进程的实时调度策略)
chrt -p 1234 // 获取进程pid为 1234 的调度策略
chrt -f -p 98 1234 // 98 位优先级, 1234 是进程pid号
top 命令:
top -p 1234 // 只查看进程pid为 1234 的资源占用
top -p 1234 -H // 显示线程数
top 然后按 1,显示所有cpu占用,以及cpu总数
lftp 命令: (ftp登陆服务器,下载文件)
lftp // 打开软件
lftp :~> open 192.168.1.111 // 打开服务器
lftp :~> user guowei // 用户
[提示输入密码]
lftp user[:password]@192.168.1.111 // 也可以将用户名和密码直接输入登陆
lftp :~> ls // 列出服务器上的文件。 如果是列出本地的文件: !ls, 删除:!rm, 显示当前目录: !pwd
// 本地命令只需要在命令前加上 ! 就可以了
lftp :~> get file1.txt // 下载文件到当前目录, 或者支持断点的 pget
更多例程,see link: https://linux.cn/article-5460-1.html
写了个脚本,自动从ftp服务器上下载指定文件,并解压, see link: http://blog.csdn.net/gw569453350game/article/details/52328986
date 命令: (显示当前系统时间)
date // 2016年 05月 13日 星期五 10:28:07 CST
ntpdata 命令:(同步系统时间)
有时候由于系统时间错误(date查看),编译的时候会出现:警告:XXX文件的修改时间在将来1.4e+09的问题,同步系统时间可以解决之
sudo ntpdate -u ntp.api.bz // 将系统时间与NTP上海服务器同步(确保联网)
ntp常用服务器:
NTP服务器(上海) :ntp.api.bz
上海交大 ntp.sjtu.edu.cn 202.120.2.101
美国:time.nist.gov
微软公司授时主机(美国) :time.windows.com
ls 命令:(基础但不简单)
ls -lh # human readable,以 k/M 显示大小
ls -alh # 显示隐藏文件(以.开头的),ctrl+h
例如
$ls -l
drwxr-xr-x 3 user group 102 Mar11 22:56 Filename
ls -l 的7个段分别是:
- 文件属性:drwxr-xr-x
- 其中各个字符代表的意义:
d: 代表是目录。其他的还有,- 代表文件
rwx:代表属主权限,- 代表无权限;r 代表具有可读权限; w 代表具有可写权限;x 代表具有可执行权限
r-x:代表组权限
r-x:代表其他用户权限
- 其中各个字符代表的意义:
- 文件硬链接数或该目录中子目录个数(包括 . 和 …):
- 3 表示有三个目录 (空目录的该字段是2,表示该目录下有两个子目录,因为每一个目录都有一个指向它本身的子目录"." 和指向它上级目录的子目录"…")
- 所有者:user
- 所属用户组:group
- 文件大小:102 byte (没有 k 或者 m 则表示 Byte)
- 修改时间:Mar11 22:56 (修改的时间)
- 说明:Access-访问时间、Modify-修改时间、Change-状态改动时间(如:chmod/chown)
- 可以
stat
命令查看这个目录所有文件的状态(例如,stat a.txt
):
ctime=change time
atime=access time
mtime=modifiy time
- 文件名:Filename
du 命令: display file usage, 显示文件(文件夹)大小的; 另外一个 df
命令,显示文件系统(磁盘使用情况)信息的。
du -d N # 相当于--max-depth=N,即显示文件夹时递归的层数
du -d0 mydirectory # 显示该文件夹大小
du -d1 -h mydirectory # 以 human readable 的形式显示该文件夹以及文件件内各个文件的大小
watch 命令: 用于周期性的执行某个命令(观察结果)
// 每1秒钟刷新一次xenomai状态
watch -n 1 "cat /proc/xenomai/stat" // --interval <secs> seconds to wait between updates
tee 命令: 保存屏幕输出(不影响结果显示)
在执行Linux命令时,我们可以把输出重定向到文件中,比如 ls >a.txt,这时我们就不能看到输出了,如果我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用tee命令了。
cat b.txt | tee a.txt // 如果 a.txt 不存在则创建之,存在则覆盖之
cat b.txt | tee -a a.txt // 追加到文件末尾,如果 a.txt 不存在则创建之
bc 命令: 命令行计算器
guowei@guowei:~$ bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
1+1
2
...
Ubuntu 简易显示数据和对比软件:
meld // 比较两个文件的差异
kst2 // 用 Data Wizard 以图表的形式画出文件中的数据,可以选择某一列
awk 简单使用:
awk -F " " '{print $2 "," $3}' #以空格为分隔符(默认),输出格式为 a,b
awk -F "," '{print $2 "_" $3}' #以逗号为分隔符,输出格式为 a_b
ls -l | awk -F " " '{print $NF}' # $NF 表示最后一项, 以空格为分隔符
xargs 简单使用:
echo "foo" | xargs echo "bar" # 输出: bar foo
如果需要调整xargs参数的位置,可以使用 placeholder, 例如 '{}' -- 同 find
echo "foo" | xargs -I '{}' echo '{}' "bar" # 输出: foo bar
lsof 简单使用:
lsof is a command meaning “list open files”, which is used in many Unix-like systems to report a list of all open files and the processes that opened them
由于一切皆文件,包括端口。查看哪个进程在使用端口 80
lsof -i -n # 查看 tcp/udp 所有连接情况
lsof -i :portNumber # 查看某个端口的连接
lsof -i tcp:portNumber
lsof -i udp:portNumber
lsof -i :80
lsof -i :80 | grep LISTEN
更多推荐
所有评论(0)