Linux基本命令
cd命令
1 | # 根据绝对路径,切换到目录/root/Docements |
ls命令
1 | # 查看文件与目录的命令 |
grep命令
1 | # 用于搜索过滤文件中的数据 |
常用参数解释:
- -a :将binary文件以text文件的方式查找数据
- -c :计算找到‘查找字符串’的次数
- -i :忽略大小写的区别,即把大小写视为相同
- -v :反向选择,即显示出没有‘查找字符串’内容的那一行
1
2
3
4
5# 例如:
# 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色
grep --color=auto 'MANPATH' /etc/man.config
# 把ls -l的输出中包含字母file(不区分大小写)的内容输出
ls -l | grep -i file
cp命令
复制文件命令,常用参数如下
- -a :将文件的特性一起复制
- -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份
- -i :若目标文件已经存在时,在覆盖时会先询问操作的进行
- -r :递归持续复制,用于目录的复制行为
- -u :目标文件与源文件有差异时才会复制
1 | cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2 |
mv命令
重命名文件使用方式
1 mv file1 file2 # 把文件file1重命名为file2
把一个文件或者多个文件一次移动到一个文件夹中(最后一个目标文件一定是目录)
1 mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中
rm命令(小心使用!!!!!!)
删除文件或者目录,常用参数
- -f :就是force的意思,忽略不存在的文件,不会出现警告消息
- -i :互动模式,在删除前会询问用户是否操作
- -r :递归删除,最常用于目录删除,它是一个非常危险的参数
1
2 rm -i file # 删除文件file,在删除之前会询问是否进行该操作
rm -fr dir # 强制删除目录dir中的所有文件
ps命令
查看进行巡行情况,该命令与其他命令的常用搭配如下
1
2
3
4
5 ps aux # 查看系统所有的进程数据
ps ax # 查看不与terminal有关的所有进程
ps -lA # 查看系统所有的进程数据
ps axjf # 查看连同一部分进程树状态
ps aux| grep -ic python # 查看系统中所有关于python的进程
kill命令
对进程发送信号,常用signal如下(使用时可以用代号代替相应的信号)
- 1:SIGHUP,启动被终止的进程
- 2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
- 9:SIGKILL,强制中断一个进程的进行
- 15:SIGTERM,以正常的结束进程方式来终止进程
- 17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
1
2
3
4
5
6 kill -signal PID
# 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程
kill -SIGTERM %1
# 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得
kill -SIGHUP PID
tar命令
对文件进行打包默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:
- -c :新建打包文件
- -t :查看打包文件的内容含有哪些文件名
- -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
- -j :通过bzip2的支持进行压缩/解压缩
- -z :通过gzip的支持进行压缩/解压缩
- -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
- -f filename :filename为要处理的文件
- -C dir :指定压缩/解压缩的目录dir
1
2
3
4 # 通常我们只需要使用如下三条命令:
压缩:tar -jcv -f filename 要被处理的文件或目录名称
查询:tar -jtv -f filename
解压:tar -jxv -f filename -C 欲解压缩的目录
cat命令
查看文本文件内容
1 cat test|less # 查看text文件中的内容
chgrp/chown命令
改变用户所述用户组/改变文件的所有者
1 chgrp/chown users -R ./dir # 递归地把dir目录下中的所有文件和子目录下所有文件的用户组修改为users
chmod命令
改变文件的权限
常用权限表示形式:
- -rw——- (600) 只有拥有者有读写权限。
- -rw-r–r– (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
- -rwx—— (700) 只有拥有者有读、写、执行权限。
- -rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
- -rwx–x–x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
- -rw-rw-rw- (666) 所有用户都有文件读、写权限。
- -rwxrwxrwx (777) 所有用户都有读、写、执行权限。
1 chmod -R 777 file # 将file设置为最高权限查看系统的配置
打开/proc目录查看系统硬件配置
1
2
3
4
5
6 // 查看cpu信息
cat /proc/cpuinfo
// 查看内存
free -m
// 查看硬盘空间
df -h
Linux更高层命令
curl命令
http命令行工具,支持文件的上传与下载。
其基本语法为:
1 | curl [option] [url] |
其常用使用方法为:
- 测试
1
curl http://www.linux.com // 测试服务器与网站的连通性
- 下载
1
curl -o filename http_url // 下载url的文件并保存名为filename
1
curl -O -u user_name:password ftp_url // 根据user_name和password下载ftp_url的文件
- 上传文件
1
curl -T upload_file -u user_name:password ftp_url // 根据user_name和password上传file到url
- 查看公网ip
1
curl ifconfig.me 或者 curl cip.cc
查看当前GPU使用情况
1 | nvdia-smi |
使用指定GPU运行程序
1 | CUDA_VISIBLE_DEVICES={{number of interface}} python {{file}}.py |
将本地服务器的文件上传到远端服务器
1 | scp -r {{本地服务器目录}} {{远程服务器名称}}@{{远程服务器ip}}:{{远程服务器目录}} |
备注:scp常用命令参数
- -r 递归复制整个目录。
- -P port 注意是大写的P,port是指定数据传输用到的端口号
scp命令常见问题
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED解决方法
1 | vim ~/.ssh/known_hosts |
ssh命令
远程登录Linux主机
最常用命令1
2
3
4
5ssh -p port user_name@hostname // 在port端口指定用户登录host
servive sshd restart // 重启sshd服务
vim /etc/ssh/sshd_config //修改配置文件的端口号和其他配置
apt-get
安装无sudo权限的软件
1 | apt-get source your_package |
用户相关命令
在root账户下:
- useradd user_name 创建用户user_name
- passwd user_name 给用户user_name设置密码
- userdel user_name 删除用户user_name
- su user_name 切换到(switch user)用户user_name
参考与引用
- https://blog.csdn.net/ljianhui/article/details/11100625/
- https://www.cnblogs.com/ksguai/p/6090115.html
- https://blog.csdn.net/kwu_ganymede/article/details/61199067
- http://blog.51cto.com/linuxme/375752
- https://www.linuxidc.com/Linux/2017-06/144916.htm
- https://zhidao.baidu.com/question/584292009.html
- https://www.cnblogs.com/huangshiyu13/p/5923607.html