shell
“ls”命令用来打印出当前目录下的所有文件和文件夹,而“ls -l”同样是 打印出当前目录下的所有文件和文件夹,但是此命令会列出所有文件和文件夹的详细信息,比 如文件大小、拥有者、创建日期等等。最有一个“ls /usr”是用来打印出目录“/usr”下的所有 文件和文件夹。
常用 Shell 命令
ls [选项] [路径] ls 命令主要用于显示指定目录下的内容,列出指定目录下包含的所有的文件以及子目录, 它的主要参数有:
-a :显示所有的文件以及子目录,包括以“.”开头的隐藏文件。
-l :显示文件的详细信息,比如文件的形态、权限、所有者、大小等信息。
-t :将文件按照创建时间排序列出。
-A :和-a 一样,但是不列出“.”(当前目录)和“..”(父目录)。
-R :递归列出所有文件,包括子目录中的文件。
目录切换命令 cd
cd [路径] 路径就是我们要进入的目录路径,比如下面所示操作:
cd / //进入到根目录“/”下,Linux 系统的根目录为“/”,
cd /usr //进入到目录“/usr”里面。
cd .. //进入到上一级目录。
cd ~ //切换到当前用户主目录
当前路径显示命令pwd
系统信产党息查看命令un
要查看当前系统信息,可以使用命令uname,命令格式如下:
uname [选项]
可选的选项参数如下:
-r :列出当前系统的具体内核版本号。
-s :列出系统内核名称。
-o :列出系统信息。
清屏命令clear
clear命令用于清除终端上的所有内容,只留下一行提示符。
切换用户执行身份命令sudo
选项主要参数如下:
-h :显示帮助信息。
-l :列出当前用户可执行与不可执行的命令
-p :改变询问密码的提示符。
假如我们现在要创建一个新的用户test,创建新用户的命令为“adduser”,创建新用户的权限只有root用户才有,我们在装系统的时候创建的那个用户是没有这个权限的,比如我的
“zuozhongkai”用户。所以创建新用户的话需要使用“sudo”命令以root用户执行“adduser”
添加用户命令adduser
在讲解sudo命令的时候我们已经用过命令“adduser”,此命令需要root身份去运行。命令格式如下:
adduser [参数] [用户名]
常用的参数如下:
-system :添加一个系统用户
-home DIR :DIR表示用户的主目录路径
-uid ID :ID表示用户的uid。
-ingroup GRP :表示用户所属的组名。
adduser的使用我们前面已经演示过了,大家可以试着再添加一个用户。
删除用户命令deluser
前面讲了添加用户的命令,那肯定也有删除用户的命令,删除用户使用命令“deluser”,命令参数如下:
deluser [参数] [用户名]
主要参数有:
-system :当用户是一个系统用户的时候才能删除。
-remove-home :删除用户的主目录
-remove-all-files :删除与用户有关的所有文件。
-backup :备份用户信息
同样的,命令“deluser”也要使用“sudo”来以root用户运行,以删除我们前面创建的用户test为例,deluser使用如图2.2.4.7所示:
切换用户命令su
前面在讲解命令“sudo”的时候说过,“sudo”是以root用户身份执行一个命令,并没有更改当前的用户身份,所有需要root身份执行的命令都必须在前面加上“sudo”。命令“su”可以直接将当前用户切换为root用户,切换到root用户以后就可以尽情的进行任何操作了!因为你已经获得了系统最高权限,在root用户下,所有的命令都可以无障碍执行,不需要在前面加上
“sudo”,“su”命令格式如下:
su [选项] [用户名]
常用选项参数如下:
-c –command :执行指定的命令,执行完毕以后恢复原用户身份。
-login :改变用户身份,同时改变工作目录和PATH环境变量。
-m :改变用户身份的时候不改变环境变量
-h :显示帮助信息
在图2.2.4.8中,先使用命令“sudo su”切换到root用户,su命令不写明用户名的话默认切换到root用户。然后输入密码,密码正确的话就会切换到root用户,可以看到切换到root用户以后提示符的“@”符号前面的用户名变成了“root”,表示当前的用户是root用户。并且以“#”结束。
注意!!由于root用户权限太大,稍微不注意就可能删除掉系统文件,导致系统奔溃,因此强烈建议大家,不要以root用户运行Ubuntu。当要用到root身份执行某些命令的时候使用“sudo”命令即可。
显示文件内容命令cat
查看文件内容是最常见的操作了,在windows下可以直接使用记事本查看一个文本文件内容,linux下也有类似记事本的软件,叫做gedit,找到一个文本文件,双击打开,默认使用的就是gedit,如图2.2.4.10所示:
我们现在讲解的是Shell命令,那么Shell下有没有办法读取文件的内容呢?肯定有的,那就是命令“cat”,命令格式如下:
cat [选项] [文件]
选项主要参数如下:
-n :由1开始对所有输出的行进行编号。
-b :和-n类似,但是不对空白行编号。
-s :当遇到连续两个行以上空白行的话就合并为一个行空白行。
比如我们以查看文件“/etc/environment”的内容为例,结果如图2.2.4.11所示:
显示和配置网络属性命令ifconfig
ubuntu默认没有ifconfig命令,需要自己手动安装,在终端输入如下命令:
sudo apt-get install net-tools
ifconfig是一个跟网络属性配置和显示密切相关的命令,通过此命令我们可以查看当前网络属性,也可以通过此命令配置网络属性,比如设置网络IP地址等等,此命令格式如下:
ifconfig interface options | address
主要参数如下:
interface :网络接口名称,比如eth0等。
up :开启网络设备。
down :关闭网络设备。
add :IP地址,设置网络IP地址。
netmask add 子网掩码。
系统帮助命令man
Ubuntu系统中有很多命令,这些命令都有不同的格式,不同的格式对应不同的功能,要完全记住这些命令和格式几乎是不可能的,必须有一个帮助手册,当我们需要了解一个命令的详细信息的时候查阅这个帮助手册就行了。Ubuntu提供了一个命令来帮助用户完成这个功能,那就是“man”命令,通过“man”命令可以查看其它命令的语法格式、主要功能、主要参数说明等, “man”命令格式如下:
man [命令名]
命令“ifconfig”的详细介绍信息,按“q”键退出到终端。
系统重启命令reboot
通过点击Ubuntu主界面右上角的齿轮按钮来选择关机或者重启系统,同样的我们也可以使用Shell命令“reboot”来重启系统,直接输入命令“reboot”然后点击回车键接口,如图2.2.4.16所示:
系统关闭命令poweroff
使用命令“reboot”可以重启系统,使用命令“poweroff”就可以关闭系统,在终端中输入命令“poweroff”然后按下回车键即可关闭Ubuntu系统,如图2.2.4.17所示:
软件安装命令install
截至目前,我们都没有讲过Ubuntu下如何安装软件,因为Ubuntu安装软件不像Windows下那样,直接双击.exe文件就开始安装了。Ubuntu下很多软件是需要先自行下载源码,下载源码以后自行编译,编译完成以后使用命令“intsall”来安装。当然Ubuntu下也有其它的软件安装方法,但是用的最多的就是自行编译源码然后安装,尤其是嵌入式Linux开发。命令“install”格式如下:
install [选项]... [-T] 源文件 目标文件
或:install [选项]... 源文件... 目录
或:install [选项]... -t 目录 源文件...
或:install [选项]... -d 目录...
“install”命令是将文件(通常是编译后的文件)复制到目的位置,在前三种形式中,将源文件复制到目标文件或将多个源文件复制到一个已存在的目录中同时设置其所有权和权限模式。在第四种形式会创建指定的目录。命令“install”通常和命令“apt-get”组合在一起使用的,关于“apt-get”命令我们稍后会讲解。
APT下载工具
更新本地数据库
如果想查看本地哪些软件可以更新的话可以使用如下命令:
sudo apt-get update
这个命令会访问源地址,并且获取软件列表并保存在本电脑上,过程如图2.4.1.3所示:
检查依赖关系
sudo apt-get check
软件安装
这个是重点了,安装软件,使用如下命令:
sudo apt-get install package-name
可以看出上述命令是由“apt-get”和“install”组合在一起的,“package-name”就是要安装的软件名字,“apt-get”负责下载软件,“install”负责安装软件。比如我们要安装软件Ubuntu下的串口工具“minicom”,我们就可以使用如下命令:
sudo apt-get install minicom
执行上述命令以后就会自动下载和安装minicom软件,如图2.4.1.5所示:
图2.4.1.5就是安装minicom这个软件的过程,在图2.4.1.5中安装的过程中,会有如下所示询问:
您希望继续执行吗?[Y/n]
如果希望继续执行的话就输入y,如果不希望继续执行的话就输入n。安装完成以后我们直接在终端输入如下命令打开minicom这个串口软件:
minicom -s
打开以后的minicom软件如图2.4.1.6所示:
要退出minicom可以直接按下ESC键
软件更新
sudo apt-get upgrade package-name
其中package-name为要升级的软件名字,比如我们升级刚刚安装的minicom这个软件,如图2.4.1.7所示:
从图2.4.1.7可以看出,minicom已经是最新的了,不用更新,不过有其它软件需要更新,因此会自动更新其它的软件。
卸载软件
sudo apt-get remove package-name
Ubuntu下文本编辑
Gedit编辑器
进行文本编辑是最常用的操作,Windows下我们会使用记事本来完成,或者其它一些优秀的文本编辑器,比如notepad++,Ubuut下有一个自带的文本编辑器,那就是Gedit。Gedit是一个窗口式的编辑器,关于Gedit的使用前面我们已经讲解了。本节我们重点讲解的是另外一个编辑器:VI/VIM编辑器。
VI/VIM编辑器
我们如果要在终端模式下进行文本编辑或者修改文件就可以使用VI/VIM编辑器,Ubuntu
自带了VI编辑器,但是VI编辑器对于习惯了Windows下进行开发的人来说不方便,比如竟然不能使用键盘上的上下左右键调整光标位置。因此我推荐大家使用VIM编辑器,VIM编辑器是VI编辑器升级版本,VI/VIM编辑器都是一种基于指令式的编辑器,不需要鼠标,也没有菜单,仅仅使用键盘来完成所有的编辑工作。
我们需要先安装VIM编辑器,命令如下:
sudo apt-get install vim
安装完成以后就可以使用VIM编辑器了,VIM编辑器有3种工作模式:输入模式、指令模式和底行模式,通过切换不同的模式可以完成不同的功能,我们就以编辑一个文本文档为例讲解VIM编辑器的使用。打开终端,输入命令:vi test.txt,如图2.5.2.1所示:
Linux文件系统
操作系统的基本功能之一就是文件管理,而文件的管理是由文件系统来完成的。Linux支持多种文件系统,本节我们就来讲解Linux下的文件系统、文件系统类型、文件系统结构和文件系统相关Shell命令。
Linux文件系统简介以及类型
Linux文件系统简介
操作系统就是处理各种数据的,这些数据在硬盘上就是二进制,人类肯定不能直接看懂这些二进制数据,要有一个翻译器,将这些二进制的数据还原为人类能看懂的文件形式,这个工作就是由文件系统来完成的,文件系统的目的就是实现数据的查询和存储,由于使用场合、使用环境的不同,Linux有多种文件系统,不同的文件系统支持不同的体系。文件系统是管理数据