当 Ubuntu 系统入门以后,我们重点要学的就是如何在 Linux 下进行 C 语言开发,如何使用 gcc 编译器、如何编写 Makefile 文件等等首先安装虚拟机软件VM:
上述字符串中,@前面的“zuozhongkai”是当前的用户名字,@后面的 zuozhongkai-virtual-
machine 是我的机器名字。最后面的符号“ $ ”表示当前用户是普通用户,我们可以在提示符后
“ ls”命令用来打印出当前目录下的所有文件和文件夹,而“ ls -l ”同样是打印出当前目录下的所有文件和文件夹,但是此命令会列出所有文件和文件夹的详细信息,比如文件大小、拥有者、创建日期等等。“ ls /usr ”是用来打印出目录“ /usr ”下的所有文件和文件夹。
1 、目录信息查看命令 lsls [ 选项 ] [ 路径 ]ls 命令主要用于显示指定目录下的内容,列出指定目录下包含的所有的文件以及子目录,它的主要参数有:-a 显示所有的文件以及子目录,包括以“ . ”开头的隐藏文件。-l 显示文件的详细信息,比如文件的形态、权限、所有者、大小等信息。-t 将文件按照创建时间排序列出。-A 和 -a 一样,但是不列出“ . ” ( 当前目录 ) 和“ .. ” ( 父目录 ) 。-R 递归列出所有文件,包括子目录中的文件。Shell 命令里面的参数是可以组合在一起用的,比如组合“ -al ”就是显示所有文件的详细信2 、目录切换命令 cd要想在 Shell 中切换到其它的目录,使用的命令是 cd,命令格式如下:,我们先使用命令“ cd /usr ”进入到“ /usr ”目录下,然后使用“ ls ”命令显示“/usr”目录下的所有文件。可以看到,当我们切换到其它目录以后在符号“ $ ”前面就会以蓝色的字体显示出当前目录名字,3 、当前路径显示命令 pwdpwd 命令用来显示当前工作目录的绝对路径,不需要任何的参数4 、系统信息查看命令 uname要查看当前系统信息,可以使用命令 uname ,命令格式如下5 、清屏命令 clearclear 命令用于清除终端上的所有内容,只留下一行提示符。6 、切换用户执行身份命令 sudoUbuntu(Linux) 是一个允许多用户的操作系统,其中权限最大的就是超级用户 root ,有时候我们执行一些操作的时候是需要用 root 用户身份才能执行,比如安装软件。通过 sudo 命令可以使我们暂时将身份切换到 root 用户。当使用 sudo 命令的时候是需要输入密码的,这里要注意输入密码的时候是没有任何提示的!命令格式如下:sudo [选项 ] [ 命令 ]选项主要参数如下:-h 显示帮助信息。-l 列出当前用户可执行与不可执行的命令-p 改变询问密码的提示符。假如我们现在要创建一个新的用户 test ,创建新用户的命令为“ adduser ”,创建新用户的权限只有 root 用户才有,我们在装系统的时候创建的那个用户是没有这个权限的,比如我的“ zuozhongkai ”用户。所以创建新用户的话需要使用“ sudo ”命令以 root 用户执行“ adduser ”7 、添加用户命令 adduser在讲解 sudo 命令的时候我们已经用过命令“ adduser ”,此命令需要 root 身份去运行。命令格式如下:adduser [ 参数 ] [ 用户名 ]常用的参数如下:-system 添加一个系统用户-home DI R DIR 表示用户的主目录路径-uid ID ID 表示用户的 uid 。-ingroup GRP 表示用户所属的组名。8 、删除用户命令 deluser前面讲了添加用户的命令,那肯定也有删除用户的命令,删除用户使用命令“ deluser ”,命令参数如下:deluser [ 参数 ] [ 用户名 ]主要参数有:-system 当用户是一个系统用户的时候才能删除。-remove-home 删除用户的主目录-remove-all-files 删除与用户有关的所有文件。-backup 备份用户信息同样的,命令“ deluser ”也要使用“ sudo ”来以 root 用户运行,以删除我们前面创建的用9 、切换用户命令 su前面在讲解命令“ sudo ”的时候说过,“ sudo ”是以 root 用户身份执行一个命令,并没有更改当前的用户身份,所有需要 root 身份执行的命令都必须在前面加上“ sudo ”。命令“ su ”可以直接将当前用户切换为 root 用户,切换到 root 用户以后就可以尽情的进行任何操作了!因为你已经获得了系统最高权限,在 root 用户下,所有的命令都可以无障碍执行,不需要在前面加上“ sudo ”,“ su ”命令格式如下:su [ 选项 ] [ 用户名 ]常用选项参数如下:-c –command 执行指定的命令,执行完毕以后恢复原用户身份。-login 改变用户身份,同时改变工作目录和 PATH 环境变量。-m 改变用户身份的时候不改变环境变量-h 显示帮助信息换到 root 用户为例,先使用命令“ sudo su ”切换到 root 用户, su 命令不写明用户名的话默认切换到 root 用户。然后输入密码,密码正确的话就会切换到 root 用户,可以看到切换到 root 用户 以后提示符的“@ ”符号前面的用户名变成了“ root ”,表示当前的用户是 root 用户。并且以“ # ” 结束。注意!!由于 root 用户权限太大,稍微不注意就可能删除掉系统文件,导致系统奔溃,因此强烈建议大家,不要以 root 用户运行 Ubuntu 。当要用到 root 身份执行某些命令的时候使用“ sudo ” 命令即可。要切换回原来的用户,使用命令“ sudo su 用户名”即可,比如我要从 root 切换回 zuozhongkai这个用户,10 、显示文件内容命令 cat查看文件内容是最常见的操作了,在 windows 下可以直接使用记事本查看一个文本文件内容, linux 下也有类似记事本的软件,叫做 gedit ,找到一个文本文件,双击打开,默认使用的就 是 gedit现在讲解的是 Shell 命令,那么 Shell 下有没有办法读取文件的内容呢?肯定有的,那就是命令“ cat ”,命令格式如下:cat [ 选项 ] [ 文件 ]选项主要参数如下:-n 由 1 开始对所有输出的行进行编号。-b 和 -n 类似,但是不对空白行编号。-s 当遇到连续两个行以上空白行的话就合并为一个行空白行。11 、显示和配置网络属性命令 ifconfigifconfig 是一个跟网络属性配置和显示密切相关的命令,通过此命令我们可以查看当前网络属性,也可以通过此命令配置网络属性,比如设置网络 IP 地址等等,此命令格式如下:ifconfig interface options | address主要参数如下:interface 网络接口名称,比如 eth0 等。up 开启网络设备。down 关闭网络设备。add IP 地址,设置网络 IP 地址。netmask add 子网掩码。命令 ifconfig 的使用有两个网卡: ens33 和 lo , ens33 是我的电脑实际使用的网卡, lo 是回测网卡。可以看出网卡 ens33 的 IP 地址为 192.168.31.235 ,我们使用命令“ ifconfig ”将网卡 ens33 的 IP 地址改为 192.168.31.20,操作如图从图 可以看出,我在使用命令“ ifconfig ”修改网卡 ens33 的 IP 地址的时候使用了“ sudo ”,说明在 Ubuntu 下修改网卡 IP 地址是需要 root 用户权限的。当修改完以后使用命令“ ifconfig ens33 ”再次查看网卡 ens33 ,发现网卡 ens33 的 IP 地址变成了 192.168.31.2012 、系统帮助命令 manUbuntu 系统中有很多命令,这些命令都有不同的格式,不同的格式对应不同的功能,要完全记住这些命令和格式几乎是不可能的,必须有一个帮助手册,当我们需要了解一个命令的详 细信息的时候查阅这个帮助手册就行了。Ubuntu 提供了一个命令来帮助用户完成这个功能,那 就是“man ”命令,通过“ man”命令可以查看其它命令的语法格式、主要功能、主要参数说明等, “ man ”命令格式如下:man [命令名]比如我们要查看命令“ ifconfig ”的说明,输入“ man ifconfig ”即可q退出13 、 系统重启命令 reboot通过点击 Ubuntu 主界面右上角的齿轮按钮来选择关机或者重启系统,同样的我们也可以使用 Shell 命令“ reboot ”来重启系统,直接输入命令“reboot”然后点击回车键即可14 、系统关闭命令 poweroff使用命令“ reboot ”可以重启系统,使用命令“ poweroff ”就可以关闭系统,在终端中输入命令“ poweroff ”然后按下回车键即可关闭 Ubuntu 系统,
APT 下载工具和我们前面讲解的“ install ”命令结合在一起构成了 Ubuntu 下最常用的下载和安装软件方法。它解决了 Linux 平台下安装软件的一个缺陷,即软件之间相互依赖。
APT 采用的 C/S 模式,也就是客户端 / 服务器模式,我们的 PC 机作为客户端,当需要下载软件的时候就向服务器请求,因此我们需要知道服务器的地址,也叫做安装源或者更新源。APT 工具常用的命令如下: (注意提前联网)1 、更新本地数据库如果想查看本地哪些软件可以更新的话可以使用如下命令:sudo apt-get update2 、检查依赖关系有时候本地某些软件可能存在依赖关系,所谓依赖关系就是 A 软件依赖于 B 软件。通过如 下命令可以查看依赖关系,如果存在依赖关系的话 APT 会提出解决方案:sudo apt-get check3 、软件安装这个是重点了,安装软件,使用如下命令:sudo apt-get install package-name可以看出上述命令是由“ apt-get ”和“ install ”组合在一起的,“ package-name ”就是要安装的软件名字,“ apt-get ”负责下载软件,“ install ”负责安装软件。比如我们要安装软件 Ubuntu 下 的串口工具“minicom ”,我们就可以使用如下命令:安装完成以后我们直 接在终端输入如下命令打开 minicom 这个串口软件:
sudo apt-get install vim
操作系统的基本功能之一就是文件管理,而文件的管理是由文件系统来完成的。
- ext2是一个非日志文件系统,大多数的Linux发行版都不支持ext2文件系统了
ext4文件系统:
ext4 文件系统是在 ext3 上发展起来的, ext4 相比与 ext3 提供了更佳的性能和可靠性,并且功能更丰富, ext4 向下兼容 ext3 和 ext2 ,因此可以将 ext2 和 ext3 挂载为 ext4 。
Windows 下的 C 盘根目录就是“ C: ” , 在 Linux 下的根目录就是“ / ”,你没有看错, Linux 根目录就是用“ / ”来表示的,打开 Ubuntu 的文件浏览器,文件浏览器在左侧的导航栏,图标如
进入到用户根目录下,直接使用命令“ cd~ ”即可快速进入用户根目录,进入用户根目录以后使用 touch 命令创建一个名为 test 的文件,创建过程如图
2、文件夹创建命令—mkdir
既然可以创建文件,那么肯定也可以创建文件夹,创建文件夹使用命令“mkdir”,命令格 式如下:
主要参数如下:-p 如所要创建的目录其上层目录目前还未创建,那么会一起创建上层目录。我们在用户根目录下创建两个分别名为“ testdir1 ”和“ testdir2 ”的文件夹,操作如图
3、文件及目录删除命令—rm
既然有创建文件的命令,那肯定有删除文件的命令,要删除一个文件或者文件夹可以使用命令“ rm”,此命令可以完成删除一个文件或者多个文件及文件夹,它可以实现递归删除。
4、文件夹(目录)删除命令—rmdir
5、文件复制命令—cp
6、文件移动命令—mv
有时候我们需要将一个文件或者文件夹移动到另外一个地方去,或者给一个文件或者文件夹进行重命名,这个时候我们就可以使用命令“ mv ”了,此命令格式如下:使用上面讲解“ cp ”命令的时候创建了三个文件夹,在上面创建的 test1 文件夹里面创建一个 c.c 文件,然后将 c.c 这个文件重命名为 d.c 。最后将 d.c 这个文件移动到 test2 文件夹里面,
1、图形化压缩和解压缩
图形化压缩和解压缩和 Windows 下基本一样,在要压缩或者解压的文件上点击鼠标右键,然后选择要进行的操作,我们先讲解一下如何进行文件的压缩。首先找到要压缩的文件,然后在要压缩的文件上点击鼠标右键,选择“压缩”选项可以选择的压缩格式还是有很多的,挑选一个格式进行压缩,比2、命令行进行文件的压缩和解压缩
我们后面的开发中所有涉及到压缩和解压缩的操作都是在命令行下完成的。命令行下进行压缩和解压缩常用的命令有三个: zip 、 unzip 和 tar
3.命令zip
zip 命令看名字就知道是针对 .zip 文件的,用于将一个或者多个文件压缩成一个 .zip 结尾的使用 zip 命令进行 test2 文件夹的压缩,我们使用的命令如下:zip -rv test2.zip test2-rv 表示递归压缩并且显示压缩命令执行过程。4、命令unzip
对上面压缩的test2.zip文件使用unzip命令进行解压缩,操作如图
5、命令tar
我们前面讲的 zip 和 unzip 这两个是命令只适用于 .zip 格式的压缩和解压,其它压缩格式就用不了了,比如 Linux 下最常用的 .bz2 和 .gz 这两种压缩格式。其它格式的压缩和解压使用命令
这里的文件类型不是说这个文件是音乐文件还是文本文件,在用户根目录下使用命令“ ls
当我们创建好账号以后,系统会
权限管理:
Linux磁盘管理基本概念
Linux 的磁盘管理体系和 Windows 有很大的区别,在 Windows 下经常会遇到“分区”这个概念,在 Linux 中一般不叫“分区”而叫“挂载点”。“挂载点”就是将一个硬盘的一部分做成文件夹的形式,这个文件夹的名字就是“挂载点”,不管在哪个发行版的 Linux 中,用户是绝对看到不到 C 盘、 D 盘这样的概念的,只能看到以文件夹形式存在的“挂载点” .