嵌入式linux常用命令

时间:2021-02-13 18:39:17

不用想就要敲出来的命令

文件管理常用的几个命令必须要熟记熟用的,就像英语里的abc一样,不用想就要敲出来。

查看目录下的文件。

通过终端到了某个目录下,如果要看看该目录下有神马文件,在输入“ls”就OK了,该命令的格式为
  ls [选项] [目录或文件]
范例:
1. ls /home
显示/home目录下的文件与目录(不包含隐藏文件)
2. ls –a /home
显示/home目录下的所有文件与目录(含隐藏文件)
3. ls –l /home
显示/home目录下的文件与目录的详细信息,该命令还可以使用简写“ll”,在Ubuntu12中,使用“ll”可以将隐藏文件一并显示出来,但是redhat6里不行。

 改变工作目录

如果要从当前目录换到另外一个目录,则可以使用cd命令。

格式为:cd 目录名
范例:
1. cd /home/
进入/home目录

2.如果要进入home下的Desktop目录,则可以使用

cd /home/Desktop 命令

3. cd ..
退回到上一级目录

4.cd ../..

返回上上一级

创建新文件-touch

格式:touch 文件名
范例:
1. touch newfile
创建一个名字为“newfile”的空白文件

复制文件/目录

格式:cp [选项] 源文件或目录 目标文件或目录
范例:
1. cp /home/test  /tmp/
将 /home目录下的test文件copy到/tmp目录下
 
2. cp –r /home/dir1 /tmp/
将 /home目录下的dir1目录copy到/tmp目录下

移动或更名

格式:mv [选项] 源文件或目录 目标文件或目录
范例:
1. mv /home/test /home/test1
将 /home目录下的test文件更名为test1

2.mv /home/dir1 /tmp/
将 /home目录下dir1目录移动(剪切)到/tmp目录下

删除文件/目录

格式:rm [选项] 文件或目录
范例:
1.rm /home/test
删除/home目录下的test文件
 
2.rm –r /home/dir
删除/home目录下的dir目录

改变文件权限

有时可执行程序解压到linux系统并不能立即使用,有时文件不能立即被修改,或者用root权限解压的文件无法在用户权限下编辑,这是因为权限不够,为此经常需要使用chmod命令来修改文件或者文件夹的权限。

格式: chmod [who] [+ | - | =] [mode] 文件名
参数:
这里的who表示下面几种:
u 表示文件的所有者。
g 表示与文件所有者同组的用户。
o 表示“其他用户”。
a表示“所有用户”。它是系统默认值。
这里的mode:
+ 添加某个权限
- 取消某个权限
= 赋予给定权限
例:chmod g+w hello.c

w 表示可写,r表示可读,x表示可执行

如果要将某个文件夹及其子目录的文件统一赋予某种权限,这在chmod 后面加一个“-R”即可。

在开发过程中 ,有时为了方面,我们会将某个文件夹下的所有文件都赋予可读可写可执行权限,此时可以使用命令

 chmod 777 -R "home/lqc/workspace"

创建目录

格式:mkdir [选项] 目录名
范例:
1. mkdir /home/workdir
在/home目录下创建workdir目录
 
2. mkdir –p /home/dir1/dri4/dir3/dir2
创建/home/dir1/dir2目录,如果dir1不存在,先创建
dir1

查看目录大小

格式:du 目录名
范例:
1. du /tmp

查看当前路径

格式:pwd
范例:
1. pwd
显示当前工作目录的绝对路径


用户管理类命令

用户管理类命令其实平常用的不是很多,除非你做系统管理或者为了实现某个特殊的要求。

添加用户

格式:useradd [选项] 用户名
范例:
useradd lqc

-添加名字为lqc的用户,当用户创建成功后,会在/home/ 目录下生成与用户名同名的目录。

删除用户 

格式:userdel [选项] [用户名]
范例:
userdel –r lqc
- smb , “-r”
删除名字为 的用户 选项会使/home目录下的该用户目录也被删除。

修改密码 

格式:passwd [选项] [用户名]
范例:
passwd lqc
123
 修改 用户的密码

切换用户

格式:su [选项] [用户名]
范例:
su – root
 
切换到root用户,并将root用户的环境变
量同时带入

添加用户组

格式:groupadd [选项] [用户组名]

范例:
groupadd group1
 
添加了组名为“group1”的用户组

删除用户组

格式:groupdel [用户组名]
范例:
groupdel group1

删除组名为“group1”的用户组

压缩打包类命令

为了便于管理和传输,将文件压缩和打包是很常见的操作。

压缩解压介绍

在Linux环境中,压缩文件的扩展名通常为*.tar; *.tar.gz;*.tgz; *.gz; *.bz2。而不同后缀名的文件,则需要使用不同的命令来处理。这里注意一点,tar是打包的命令,其它几个都是压缩的命令。
*.gz <-> gzip命令压缩的文件
*.bz2 <-> bzip2命令压缩的文件
*.tar <-> tar命令打包的文件
*.tar.gz <-> tar打包后,再经过gzip压缩的文件
*.tar.bz2 <-> tar命令打包后,再经过bzip2压缩的文件

压缩和解压-gzip

格式:gzip [选项] 文件名
范例:
1. gzip /root/anaconda-ks.cfg
压缩文件
2. gzip –d /root/anaconda-ks.cfg.gz

解压文件

压缩解压-bzip2
格式:bzip2 [选项] 文件名
范例:
1. bzip2 /root/anaconda-ks.cfg
压缩文件
2. bzip2 –d /root/anaconda-ks.cfg.bz2
解压文件

打包压缩-tar

格式:tar [选项] 目录或者文件
范例:
1. tar cvf tmp.tar /tmp
将tmp目录打包为一个文件
2. tar xvf tmp.tar
 
将打包文件解开
3. tar cvzf tmp.tar.gz /tmp
将tmp目录打包为一个文件
4. tar xvzf tmp.tar.gz
将打包文件解开

上的v参数主要是显示当前正在处理的文件名称和已经处理过的文件列表,如果没有该参数,也能正常处理,只是终端没有输出,让哥们感觉系统出问题了。

磁盘管理类命令

加载光盘-mount

格式:mount [选项] 设备名 挂载目录
范例:
1. mount /dev/cdrom /mnt

如果挂载usb设备,要先检查usb挂载到了哪里,以及名称是什么,一般会挂载到/dev/目录下,名称一般为sda,sdb……,但是有时会按照sda1,sda2酱紫来编号,所以要先确认一下具体的名称再挂载。

另外,有时候挂载时仍然不对,虽然给的提示一堆,但是差不多能看出来是文件格式不对,这样就需要在mount后面加上 -t,然后加上对应的文件格式

命令格式: 
  mount [-t vfstype] [-o options] device dir 


其中: 
  1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有: 
  光盘或光盘镜像:iso9660 
  DOS fat16文件系统:msdos 
  Windows 9x fat32文件系统:vfat 
  Windows NT ntfs文件系统:ntfs 
  Mount Windows文件网络共享:smbfs 
  UNIX(LINUX) 文件网络共享:nfs 

如果不知道U盘的文件格式,一般使用vfat 、ntfs、nfs试验一下就行了。

笔者的U盘挂载命令为;

 mount -t vfat /dev/sda /mnt/usb


2.卸载光盘-umount
格式:umount 挂载目录
范例:
1. umount /mnt
重要提示:请在执行umount之前,保证已经用户已经退出了mnt目录


查看磁盘

linux查看磁盘有两种常用的命令,df -hl和fdisk -l

格式:df [选项]
范例:
1. df -hl
笔者感觉,在处理挂载了U盘等场景中,使用“fdisk -l”命令更好用。

文件链接-ln

在Linux系统中,存在类似于windows中“快捷方式”的链接文件。链接文件又分为“软链接”和“硬链接”。软链接可以看作是Windows中的快捷方式,可以让你快速链接到目标档案或目录,如果原文件删除则链接无效。硬链接则透过文件系统的inode来产生新档名,而不是产生新档案。
格式:ln [选项] 文件名 链接名
范例:
1. ln oldfile hlink
为oldfile文件创建一个硬链接hlink
2. ln –s oldfile slink
为oldfile文件创建一个软链接slink

查找类命令

查找文件/目录-find

格式:find 查找路径 -name 文件名
范例:
1. find /root/ -name install.log
在root目录下寻找名字为intall.log的文件


2.查找字符串
格式:grep “字符串”路径 [选项]
范例:
1. grep “hello” ./ -rn
在当前路径下寻找包含字符串”hello”的文件
2. grep “he*” ./ -rn


在当前路径下寻找包含以”he”开头的字符串的文件

进程管理类命令

显示所有运行的进程

格式:ps [选项]

在嵌入式系统中,一般直接使用ps命令就可以了。但是在PC版linux系统中,输入ps命令只显示bash和ps的进程号,其他的都不显示。解决方法是在ps后面添加参数aux。
范例:
1. ps aux

杀死进程-Kill

格式:kill [选项] pid

pid是进程号,这个可以使用上面的ps aux查看。
范例:
1. vi hello.c
2. ps aux
3. kill

查看内存-free

格式:free [选项]
范例:
1. free

CPU占有率-top

格式:top [选项]
范例:
1. top

redhat6其他常用命令

图形化和控制台界面的切换方法

 使用init 3命令,可以从图形化切换到控制台。使用init 5可以反切换。

软件管理-rpm

格式:rpm [选项] [软件包]
范例:
1. rpm –ivh /mnt/Packages/xinetd-2.3.14-
34.el6.i686.rpm
安装xinetd-2.3.14-34.el6.i686.rpm
2. rpm –qa
查看系统中已经安装的所有软件包
3. rpm –e xinetd-2.3.14-34.el6.i686
卸载已经安装的xinetd-2.3.14-34.el6.i686

管道操作-|

格式 命令1 | 命令2
范例:
1. rpm –qa|grep tar
查询系统中安装的所有软件包,并从中找出带有字符
串”tar”的。

查看帮助-man

格式:man 命令名
范例:
1. man find
查看find命令的用法

关闭linux系统

格式:shutdown [选项] 时间
范例:
1. shutdown now
立刻关机