Ubuntu命令行

Ubuntu

Posted by kkkkuboy on February 2, 2019

Ubuntu命令行

一、Grub命令

Ubuntu是用Grub引导的,开机后首先看到的是Grub命令行

1、Grub命令

(1)等系统自检后会出来 Grub 菜单,或者按住Shift键或ESC键调出菜单;

(2)菜单中列出了几个启动项,下面有操作提示,按字母 c 进入 grub 提示符;

(3)常用的命令有 help、ls、root、search、linux、boot、halt、reboot 等,可以输入 help 后查看, 输完按回车,没有错误提示就是成功了,接着输入下一条;

(4)按 ESC 键返回菜单,按字母 e 编辑菜单命令,编辑完以后,按 Ctrl+X运行;

(5)输入一个命令后,按 Tab 键可以自动补全,这样更方便一些;

二、进入命令行

命令行一般在终端中运行,先要进入到终端里

1、进入到终端

(1)在左上角圆圈按钮,出现文本框,输入ter

(2)直接在应用程序栏点击进入终端

(3)按组合键 Ctrl+Alt+F1 也可以进入终端,这时是全屏模式,需要重新登录,输入自己的用户名和密码,密码不显示,盲打输入后按回车。按 Ctrl + Alt + F7即进入图形界面模式;

2、输入命令

(1)出来一个窗口,在提示符 $ 后面就可以输入命令,按回车执行;

(2)命令执行后会有提示,如果出错会显示 error 或“找不到命令”;

3、退出终端

(1)可以直接关闭窗口,或者输入 exit 命令;

(2)若按组合键 Ctrl+Alt+F1 进入终端,输入 exit 退出登录,然后按 Alt+F7 返回到桌面;

三、文件和路径

系统中的设备和数据,都是以文件的形式来访问的,找到一个文件的步骤称作路径;

1、设备文件

(1)/ “根”是最高一级的,其他文件都在它之内,也称为文件系统;

(2)硬盘用 hd0、hd1 或者 sda、sdb 来表示,硬盘上的分区用 sda1、sda5 等表示,打开终端,输入 sudo fdisk -l 按回车,输入密码后可以查看硬盘分区情况;

day5-1

(3)文件存放在对应的文件夹中,系统固定的文件夹有 /home、/boot、/etc、/tmp 等;

(4)用户文件存放在自己的主文件夹中,一般是自己的用户名的文件夹;

2、路径

(1)打开一个终端时,当前位置是自己的主文件夹,用 ~ 表示,输入 pwd 命令可以查看当前路径;

day5-2

(2)路径切换用 cd 命令,查看文件用 ls 命令;

四、cd切换目录

从一个文件夹转到另一个文件夹,使用cd命令;

1、cd命令

(1)打开终端窗口,显示当前为主文件夹

(2)输入命令cd/etc,注意在cd后面有一个空格,etc 是一个存放系统配置文件的文件夹;

(3)按回车键后,当前路径改变为 /etc,也就是来到了 etc 文件夹中;

(4)输入 cd .. 命令,注意 cd 后面有个空格,然后是两个点, 它代表上一级文件夹,也就是根目录,一个点代表当前文件夹;

(5)输入 cd home/sakura 注意cd 后面有一个空格,由于 home文件夹在根里面,前面就不必加 / 了,后面的 sakura 换成自己的用户名;

(6)这样又回到自己的主文件夹,也可以输入命令 cd ~ 直接回到主文件夹;

day5-3

五、ls列出文件

ls命令可以查看当前文件夹中的文件,类似的也可以用dir命令;

1、ls命令

(1)打开终端窗口,显示当前为主文件夹;

(2)输入命令 ls 然后按回车,这是查看主文件夹里的内容;不同颜色代表不同的类型,普通文件是灰色,文件夹是蓝色,可执行文件是绿色;

(3)再输入 ls -l 后面是空格、短线小写的 L,用来显示详细信息,包括日期、大小、权限、所有者等;

(4)输入 ls -a 这会显示隐藏文件,即文件名是以 . 点开头的文件,这些文件或文件夹平时是不显示的;

(5)查看当前文件夹和子文件夹中的,所有 txt 类型的文件,也就是文件扩展名是 .txt 的文件,输入命令 ls */.txt(其他类型的文件类似);

(6)其他用法,输入 ls –help 命令,查看更多详细的介绍;

day5-4

day5-5

等等

六、cat查看文件

cat是一个文本文件查看器,可以方便查看文件内容(即进入文件;

1、cat命令

(1)先用 ls 命令查看一下当前文件夹中的文件,发现没有可以查看的文件;

(2)若存在可以查看的文件,输入命令cat 文件名 就可以看到文件夹里面的内容;

(3)输入 cat –help 后可以查看更多帮助信息;

day5-6

(4)more 命令跟它相似,只是可以分页查看,按空格到下一页,对于比较长的文件,可以用它来查看;

cat 将两个文件拼接在一起,cat file1 file2 > file3

七、mkdir和rmdir创建和删除文件夹

这个命令用于在当前文件夹里,创建一个文件夹;

1、mkdir命令

(1)输入命令 mkdir Temp 注意区分大小写字母,没什么提示就是成功了;

(2)用 ls 命令,可以看到新建的文件夹;

day5-7

2、rmdir删除文件夹

(1)这个命令可以删除一个空文件夹,输入命令 rmdir Temp,使用ls查看,删除成功;

(2)再创建文件夹Temp,并在Temp文件夹里创建一个OK文件夹,使用rmdir Temp删除失败;

(3)对于非空的,里面有文件的文件夹,使用 rm -rf Temp 命令,这个 rm 命令会强制删除文件和文件夹,比较危险,一定要仔细检查后运行;使用rm -rf Temp删除,ls查看,删除成功;

day5-8

3、rm命令

rm命令用来删除不需要的文件。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是断开了链接,原文件保持不变。

但是这个命令挺危险的…可能一不小心,你就把所有文件删掉了

rm命令的一般形式为:

“rm [选项] 文件名… ”

如果没有使用“- r”选项,则rm不会删除目录。

该命令的各选项含义如下:

  • “- f ”忽略不存在的文件,强制删除,不给出提示。
  • “- r” 指示rm将参数中列出的全部目录和子目录均递归地删除。
  • “- i ”进行交互式删除。

使用rm命令一定要小心,因为一旦文件被删除,它是不能被恢复的。为了防止这种情况的发生,可以使用“i”选项来逐个确认要删除的文件。

“-rf”和“-fr”的效果是一样的。

八、cp复制命令

复制可以把一个文件拷贝一份做备份;

1、cp命令

(1)打开终端窗口,输入 touch a.txt 创建一个空文件,再用 mkdir Temp 创建一个文件夹;

(2)输入命令 cp a.txt Temp/ 也就是把 a.txt 复制到 Temp 文件夹里,然后用 ls Temp 看一下Temp里面的内容;

day5-9

(3)如果要复制一个文件夹过去,加上 -r 参数,下面的两个 && 是连接符号,两个命令依次执行;先创建一个文件夹里面放一个文件:mkdir t && touch t/b.txt;

(4)再输入复制命令 cp -r t/ Temp/ 然后用 ls Temp 来查看一下里面的内容;

day5-10

(5)更多的用法,可以使用 cp –help 命令来查看;

 

九、nano编辑器

nano是终端里的文本编辑器,在没有图形界面时。可以简单修改文本文件;

1、nano编辑器

(1)打开终端窗口,显示当前为主文件夹;

(2)输入命令 nano 进入编辑器窗口,左上角光标一闪一闪,表示可以输入内容,下面两排是命令组合键;

(3)按键盘输入一行字母 ,按回车到一下行,再输入一行字母;

day5-11

(4)保存命令是按组合键 Ctrl+O 左手按住 Ctrl 键不松,右手按一下 O 键,下面出来一行提示;

day5-12

(5)这是要求输入一个文件名,输入文件名然后按回车就可以保存了;

(6)保存完以后就可以退出了,按组合键 Ctrl+X 退出程序,返回到终端,^ 号表示 Ctrl 键;

(7)也可以直接用 nano hello 打开一个文件,如果你知道这个文件名的话;

day5-13

十、mv移动命令

mv命令可以把文件或文件夹移到别的地方,也可以作重命名用;

1、mv移动命令

(1)打开终端窗口,显示当前为主文件夹;

(2)输入 mv t tmp 命令,把上次创建的 t 文件夹,重命名为 tmp ,然后用 ls 查看 一下;

day5-14

(3)再输入 mv tmp/ Temp/ 命令,把 tmp 移到 Temp里,加个反斜杠是表示文件夹,不加系统也可以自动识别;

day5-15

(4)mv 还可以移动文件和重命名文件,输入 mv a.txt a1.txt 命令,把文件名改成 a1.txt;

(5)再输入 mv a1.txt Temp/ 命令,把它移到 Temp 文件夹中,用 ls Temp 查看一下;

day5-16

十一、管理员命令

1、切换到管理员身份

(1)打开终端,显示当前为主文件夹;

(2)在命令前面加上 sudo 就可以管理员身份执行命令;

(3)这时候会提示输入自己的密码,密码不显示盲打输入,用户必须是adm用户组才行;

day5-17

(4)输入命令 sudo su 可以将提示符切换到管理员身份,这样就不必每次加上 sudo,输入 exit 命令返回普通用户;

(5)类似的可以输入 sudo -i 也可以切换到管理员身份,此时当前目录是/root;

day5-18

十二、chmod设置文件属性命令

1、chmod设置文件属性命令

(1)打开终端,显示当前为主文件夹,假设我们用 touch t 命令创建一个文件 t ;

(2)输入命令 ls -l t 查看文件 t 的属性,中间是个小写的 L ,其中的字母rwx分别代表读(read)、写(write),还有一个运行x(execute);

(3)输入命令 chmod +x t 给文件加上可执行属性,输入命令 chmod +r t 给文件加上可读属性,输入命令 chmod +w t 给文件加上可写属性;

(4)若是只让拥有者运行,其他用户不能,则用 chmod u+x t 命令(u后面直接加号),只给 u(user)加 x 权限,g(group)用户组和o(other)其他用户都没有;

(6)另外也可以用数字来代替这三位,7是全部5是只运行,可以用 777 或755,输入命令 chmod -x t再输入 chmod 755 t 再输入 ls -l t

2、为脚本程序指定执行权限命令的参数为

chmod +x filename.sh

例子: lrwxrwxrwx

l rwx rwxrwx

文件类型 文件所有者的权限 文件所有者所在组的权限其他用户的权限

十三、chown更改拥有者命令

有些文件只有所有者可以操作,所以要更改它的拥有者;

1、chown更改拥有者命令

(1)打开终端,显示当前为主文件夹,用 touch t.txt 命令创建一个文件 t.txt,用 ls -l t.txt 查看一下,文件的属性信息;

(2)输入命令 sudo chown root:root t.txt 可以将文件的所有者和用户组改为 root,这时原来的所有者将变成其他用户;

(3)这时原来的用户只有读权限(r),要想更改权限的话就得切换到管理员身份,但此时还可以删除它;

day6-3

十四、更多Linux的相关命令和工具的使用

1、gdb命令

1、gdb查看线程信息

info threads 显示当前可调试的所有线程,每个线程都会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID。 前面有*的是当前调试的线程。

2、set scheduler-locking 线程调试 显示线程状态,off 不锁定任何线程
3、info break

可列出所有断点信息,info break 后也可设置要查看的break num

2、user相关

1、usermod修改用户账号信息

1)修改login ID usermod -l 修改账号名称 使用格式:usermod -l new_name old_name

usermod(选项)(参数):参数若为两个,顺序一般为 usermod (选项) 目标参数 原始参数 -c<备注>:修改用户帐号的备注文字; -d<登入目录>:修改用户登入时的目录; -e<有效期限>:修改帐号的有效期限; -f<缓冲天数>:修改在密码过期后多少天即关闭该帐号; -g<群组>:修改用户所属的群组; -G<群组>;修改用户所属的附加群组; -l<帐号名称>:修改用户帐号名称; -L:锁定用户密码,使密码无效; -s:修改用户登入后所使用的shell; -u:修改用户ID; -U:解除密码锁定。

2、useradd增加用户
3、group添加组账号
4、userdel删除用户
5、lasr查看曾经登录到此系统的用户清单

3、查看当前系统的启动时间

who -b 查看当前系统的启动时间

last reboot 查看当前系统的启动时间

w 查看当前系统的启动时间

top 查看当前系统的启动时间,Linux 下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,默认5秒刷新一下进程列表.显示的前五行是系统的整体统计信息:第一行表示任务队列信息;第二三行表示进程和cpu的信息;第四五行表示内存信息

uptime 查看当前系统的

在shell环境下查看远程Linux系统运行了多少时间

ssh user@被监控主机ip “uptime”

4、查看文件

cat,less,more都可以查看,只是查看的方式不一样,less可以让光标上下移动,more只能用enter键往下翻,cat的话直接跳到最后一页了。

5、查看网络故障

telnet命令通常用来远程登录。telnet程序是基于TELNET协议的远程登录客户端程序。Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。通过检测端口判断服务状态.

ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”、不能打开网页时会说“你先ping网关地址192.168.1.1试试”。它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是否可访问(但这不是绝对的)。有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样就不能通过ping确定该主机是否还处于开启状态。

netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。 n etstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。 如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用 n etstat查一查为什么会出现这些情况了。

6、crontab定时任务

通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。

命令格式
crontab [-u user] file crontab [-u user] [ -e -l -r ]
crontab的文件格式

分 时 日 月 星期 要运行的命令

  • 第1列分钟0~59
  • 第2列小时0~23(0表示子夜)
  • 第3列日1~31
  • 第4列月1~12
  • 第5列星期0~7(0和7表示星期天)
  • 第6列要运行的命令

8、磁盘相关

安装命令:rpm -ivh 卸载命令: rpm -e [package name] 查看挂载状态: mount 磁盘空间:df