C高级 DAY1

一、复习

        命令行提示符

                                                        ubuntu@ubuntu:~$

第一个ubuntu:用户名

第二个ubuntu:主机名

@ : ---> 分割符

~ : 用户的家目录

$: 普通用户

#:管理员

        切换用户

su     用户名---》切换至指定用户

su      --》切换至超级用户

sudo      加在之前表示以超级用户权限执行

        修改密码

passwd       用户名--》修改指定用户的密码

        查看当前目录下的文件

ls        ls -alh        ls-a        ls-h        ls-l

ls-i显示文件的inode号

        

-  rw-  rw-  r-- 1 ubuntu ubuntu  499 六月 28 17:01 1.c
|   |    |    |  |   |       |    大小     时间戳    文件名
|   |    |    |  |  用户名  用户所属组
|   |    |    | 硬链接文件的个数
|   |    |其他用户o对改文件的操作权限
|   | 文件所属组g的权限
| 文件所属用户u的权限
文件类型

文件类型又分为bcd-lsp 7种

b:块设备文件         -:普通文件

c:字符设备文件      l:软连接文件

d:目录文件             s:套接字文件

p:管道文件

修改文件权限--chmod

chmod 用户+/-/=权限的字母表示 文件名

八进制表示法:

chmod 0三位八进制数 文件名

chmod 4 1.c ------> 把1.c的其他用户权限改为4,所属组和所属用户没有权限

echo

回显字符串

mkdir

mkdir /dir1/dir2/dir3 -p 实现多级目录的创建

二、下载上传的指令

下载软件

sudo apt-get install 软件名   ---->下载软件
sudo apt-get install oneko   --->追鼠标的猫
sudo apt-get install bastet  --->俄罗斯方块
下载软件后,如何执行:
直接在终端输入软件名
以oneko为例,直接输入软件名,会在前台执行,没有办法去写其他的指令
oneko&  ---->让onkeo后台运行,会回显一个进程号
可以直接使用kill -9 进程号,杀死进程
sudo apt-get install gnome-mines   ---->下载扫雷
sudo apt-get remove 软件名  --->卸载软件,不完全卸载
sudo apt-get remove 软件名 --purge  --->卸载软件,完全卸载
sudo apt-get download 软件名  --->下载软件的安装包
download指令会把安装包下载在执行指令的路径下
sudo apt-get clean  ---->清空默认下载位置的安装包
/var/cache/apt/archives/  ---->软件包的默认下载位置
 
sudo apt-get install make

离线安装软件指令

下载:sudo dpkg -i 软件包名 (重点掌握)
注意事项:如果执行指令的路径和安装包不在同一路径下,要给安装包加上路径
卸载:sudo dpkg -r 软件名     ---->不完全卸载软件
     sudo dpkg -P 软件名     ---->完全卸载软件

 三、文件相关指令

head                 tail

显示文件中前十 后十行代码

head和tail,默认显示前10行和尾10行,如果不足就全部显示,

如果超过10行,只显示10行

管道符

|                将前一条消息输出当做后一条指令的输入

find

通过find查找文件,结果为绝对路径

格式:
find 要查找的路径 -name 要查找的文件名

也可使用模糊搜索

find 目标路径 -name  1\*.c

 搜索目标路径下,以“1”开头,以“.c”结尾的文件

通配符

C高级 DAY1_第1张图片

 file查看文件

ELF:是一个ELF类型的文件
64-bit:支持64位操作系统
LSB shared object:小端存储
x86-64 ----->架构
version 1 (SYSV) ---->版本
dynamically linked, interpreter /lib64/l, --->链接的库
for GNU/Linux 3.2.0  ---->gcc编译器的版本
BuildID[sha1]=60b94b36154878cc979cc2aae1af6e92a45f044f, ---->动态ID
not stripped  ---->文件没有被压缩过,arm的时候会讲

wc--》word count

C高级 DAY1_第2张图片

回显行号,      单词个数,  字符个数,     文件名

grep查找字符串

grep  "要查找的字符串"  要查找的路径  (参数)

参数可以为

-n:查找的同时显示字符串所在行

-i:不区分大小写

-R:递归查找(用于目标路径是目录不是文件)

-w:按单词查找

grep "ubuntu$" 文件名   ---->查找以ubuntu作为结尾的所在行
grep "^ubuntu" 文件名   ---->查找以ubuntu作为开头的所在行
grep "^ubuntu$" 文件名   ---->要求开头和结尾是同一个ubuntu

cut字符串裁剪

cut -d "分隔" -f "要截取的域" 文件名

 域一般为数字,分隔前为域1

压缩与解压缩(只能对文件使用)

压缩和解压缩后源文件都会消失,而压缩和解压缩都分为3种,且必须一一对应

压缩
gzip  要压缩的文件    --》生成.gz后缀文件
bzip2 要压缩的文件    --》生成.bz后缀文件
xz    要压缩的文件    --》生成.xz后缀文件
 
解压缩
unxz  要解压缩的文件  ---->把压缩文件解压出来,压缩文件.xz会消失
gunzip 要解压缩的文件
bunzip2 要解压缩的文件

三种压缩工具的压缩效率:xz  >  bz2  >  gz
三种压缩工具的压缩时长:xz  >  bz2  >  gz
xz需要时间更长,适用于对文件归档
gz需要时间更短,适用于临时文件传输

tar文件归档 解压缩

归档

归档是带-c参数

tar -cvf 要生成的文件名.tar  要打包的文件

 -j:使用baz2工具压缩        -J:使用xz工具压缩        -z:使用gz工具压缩

注意:归档压缩和解压缩必须一一对应,除非是使用万能方式解压缩

tar -czf  生成的文件名.tar.gz  要打包并压缩的文件
tar -cjf  生成的文件名.tar.bz2 要打包并压缩的文件
tar -cJf  生成的文件名.tar.xz  要打包并压缩的文件

拆包并解压缩

tar -xvf 要拆包(解压缩)的文件   ---->既可以完成拆包也可以完成解压缩

万能拆包解压缩指令,什么压缩方式的包都能拆

当然也使用对应的压缩参数进行解压缩,-j、-J、-z

四、文件权限相关操作

chgrp--》修改文件所属组用户

由于现在都是在ubuntu用户和root用户之间转换,所以需要加sudo,如果是两个普通用户之间的转换不需要加sudo
例:有文件2.c
sudo chgrp root 2.c  --->把2.c文件的所属组用户改为root

chown--》修改文件的所属用户

由于现在都是在ubuntu用户和root用户之间转换,所以需要加sudo,如果是两个普通用户之间的转换不需要加sudo
sudo chown root: 1.c  修改1.c的所属用户和所属组用户为root
sudo chown :root 1.c  修改1.c的文件所属组用户为root
sudo chown root 1.c   修改1.c的所属用户为root
sudo chown ubuntu:root 1.c   修改1.c的文件所属用户为ubuntu,所属组用户为root

作业

grep "^ubuntu" /etc/passwd | cut -d "/" -f "3"| tr ':' ' '

你可能感兴趣的:(服务器,运维)