目录
一、Linux系统中查看进程、内存的指令,tar解压文件的参数
一、Linux系统中查看进程、内存的指令,tar解压文件的参数
1、查看进程运行状态的指令:ps命令。
“ps -aux | grep PID”,用来查看某PID进程状态。
2、查看内容使用情况的指令:free命令。
“free -m”,查看内存使用情况。
3、tar解压文件的参数:
五个命令中必选一个:
-c:建立压缩档案
-x:解压
-t:查看内容
-r:想压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这几个参数是可选的:
-z:有gzip属性的
-j:有bz2属性的
-z:有compress属性的
-v:显示所有过程
-o:蒋文件解开到标准输出
二、Linux文件权限如何修改
Linux文件的基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。文件的权限字符为 -rwxrwxrwx时,这九个权限是三个一组,我们可以使用数字来代表各个权限。各权限的分数对照如下:
r(read) | w(write) | x(execute) |
4 | 2 | 1 |
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的。
例如当权限为:-rwxrwx---,则分数为:
owner = rwx = 4+2+1=7
group = rwx = 4+2+1=7
others = --- = 0+0+0=0
所以我们设定权限的变更时,该文件的权限数字就是770,变更权限的命令是chmod,用法如下:
[root@wsx ~]# chmod [-R] xyz 文件或目录
选项与参数:
xyz:数字类型的权限属性,为rwx属性数值的相加。
-R:进行递归(recursive)的持续变更,连同次目录下的所有文件都会变更。
# chmod 770 a.out //修改a.out文件的权限为770
三、Linux常用的命令
1、cd:用于切换当前目录。
2、ls:用于查看当前文件和目录。
3、grep:该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工。
4、cp:用于复制。
5、mv:用于移动文件或文件夹。
6、rm:用于删除文件或文件夹。
7、ps:用于查看进程情况。
8、kill:用于向进程发送终止信号。
9、tar:用于对文件进行打包,调用gzip或bzip对文件进行压缩或解压。
10、cat:查看文件内容,与less、more功能相似。
11、top:用于查看系统的信息,如进程、CPU占有率、内存信息等。
12、pwf:用于显示当前工作目录。
四、如何以root权限运行某个程序
sudo chown root app(文件名)
sudo chmod u+s app(文件名)
输入上面两条指令即可。
五、简述软链接和硬链接的区别
1、定义不同
软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。
硬链接是一个文件的一个或多个文件名。把文件名和计算机文件系统使用的节点号链接起来,因此我们可以用多个文件名与同一个文件进行链接,这些文件名可以在同一目录或不同目录。
2、限制不同
软链接可以对不存在的文件或目录创建软链接,可交叉文件系统。
硬链接只能对已存在的文件进行创建,不能交叉文件系统进行硬链接的创建。
3、创建方式不同
软链接可以对文件或目录进行创建。
硬链接不可以对目录进行创建,只可对文件创建。
4、影响不同
删除软链接不影响被指向的文件,但若被指向的文件被删除,则相关软链接被称为死链接(即dangling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。
删除硬链接文件并不影响其他有相同inode号的文件。
六、静态库和动态库如何制作及使用,区别是什么
1、静态库
(1)制作
gcc hello.c -c //这样就生成hello.o目标文件
ar rcs libhello.a hello.o //生成libhello.a静态库
(2)使用
gcc main.c -lhello -o staticLibrary //main.c和hello静态库链接,生成staticLibrary执行文件
/*
main.c 指主函数
-lhello 生成的.a文件砍头去尾(lib去掉,.a去掉)前面加-l
-L 告诉gcc编译器先从-L指定的路径去找静态库,默认是从/usr/lib/或者/usr/local/lib去找
./ 指当前路径
staticLibrary 最后生成的文件名(自己命名)
*/
2、动态库
(1)制作
gcc -shared -fPIC hello.c -o libhello.so
-shared 指定生成动态库
-fPIC fPIC选项作用于编译阶段,在生成目标文件时就得使用该选项,以生成位置无关的代码
(2)使用
gcc main.c -lhello -L./ -o dynamicDepot
/*
main.c 指main主函数
-lhello 生成的.so文件砍头去尾(lib去掉,.so去掉)前面加-l
-L 告诉gcc编译器先从-L指定的路径去找静态库,默认是从/usr/lib/或者/usr/local/lib去找
./ 指当前路径
dynamicDepot 最后要生成的文件名(自己命名)
*/
3、区别
(1)静态库代码装载速度快,执行速度略比动态库快。
(2)动态库更加节省内存,可执行文件体积比静态库小很多。
(3)静态库是在编译时加载,动态库是在运行时加载。
(4)生成的静态库链接,Windows下以.lib为后缀,Linux下以.a为后缀;生成的动态库链接,Windows下以.dll为后缀,Linux下以.so为后缀。