Linux第一天

总结:

Linux 打包:

tar -cvf aaa.tar *  c是create v是显示文件 f是file

tar -xvf aaa.tar    x是解压 v是显示文件 f是file

查看目录大小:

du ./ -h

Linux压缩:

gzip xxx.tar

gzip -d xxx.tar.gz

bzip2 xxx.tar

压缩打包:

tar -cxvf xxx.tar.gz

tar -cjvf xxx.tar.bz2   
解压打包:

tar -zxvf xxx.tart.gz
tar -zjvf xxx.tar.bz2 -C 指定路径  c create j bzip2 v 压缩过程中显示文件 f file

ZIP:
zip -r test *
uzip -d ./test.zip

WHICH:

which ls
which gc
which sudo

第一天

一、操作系统

1.1.1操作系统的目标

·方便:使计算机系统易于使用

·有效:以更有效的方式使用计算机系统资源

·扩展:方便用户有效开发、测试和引进新功能

1.1.2 操作系统的地位

操作系统——向下封装硬件

系统编程:在某个系统上面编程,系统调用,调用操作系统提供的接口

Unix => Linux

 

 

 

 

 

 

2.文件系统

2.1目录和路径

Windows

Unix/Linux /

 

(记住 /   /bin 和 /home)

(记住lib C语言使用时候需要的库函数)

usr == Unix System Resource

/ 根目录

/home 家目录

/bin 放工具

/lib 放库文件

/usr/include 头文件

2.3 一切皆文件

 

2.权限问题:

ls -l stdio.h

开始的-代表文件,-后面有9个字符,三个三个为一组,分类

第一组:文件所有者

第二组:用户组(相当于qq群..)

第三组:其他用户

root root 代表root用户组的文件所有者root

-没权限

r读

w写

x可执行

第一步:whoami 查看我是谁

第二步:cat /etc/group 查看到root组的群号是0

第三步:cat/etc/passwd

解读:

我的蜜罐子你叫做呼号

改一下权限(这个以后会学)

然后ls -l,gedit stdio.h 就会发现编辑器上没有只读的限制了。

3.命令:

ls –help

ls -a  显示所有文件(包括隐藏文件)

4.命令使用方式和技巧

(其实好像是manual的简写)

命令printf aaa

有一个函数也叫printf

如果直接输入 man ls

那么其实查询的是命令

敲一下 man man 看一下手册说明

原来输入man printf的时候查询的是第一章节的内容,

所以以后查询的时候指定第三个章节好了,

 

自动补全: 按tab让它自动补全

05:常用命令:ls

1.ls -l -a -h (-human更人性化)

ls -lah

2.ll (是ls -l-a的一个别名)

3.

(.. 和 . 算两个文件夹)

4.ls stdio.h 看看有没有这个文件,如果有stdio.h就会显示出这个名字

  ls *.c

  ls te* 找te开头的

  ls ?.c 只匹配一个字符的

  ls [1-9].?

5.touch 如果文件不存在,则创建文件

        如果文件存在,文件修改时间就会变成当前时间

   touch *.c 把所有.c文件改成当前时间

   touch *.c (这时创建了一个文件,不是通配符,而是转义字符)

6.常用命令:重定向、more、管道

1.ls > test.txt

把ls显示到屏幕的东西写到test.txt中(覆盖)

ls >> test.txt 把屏幕的东西追加到test.txt中

2.cat /usr/include/stdio.h

3.more /usr/include/stdio.h(分屏显示)

4.管道: cat stdio.h | more

5.ls | grep std 输入的是ls 输出的要grep

7.常用命令:clear、cd、pwd

1.clear 或者 ctrl+l

2.cd .. . 

  cd什么都不加或者加~ 去到用户主目录

  cd – 回到上一次进入的目录

8.常用目录:mkdir、rmdir、rm

1.mkdir创建目录 参数-p可以递归创建目录库

mkdir ./a/b/c -p

2.rmdir 只能删除空的文件夹

mkdir a 加a这个参数

3.rm a -r 删除掉这个文件夹

  -f 不进行提示

删除所有文件:rm * -rf 用这个时候小心

因为可能会出现这种情况:

rm * .png -rf (中间多了一个空格结果导致所有文件和.png都被删除)

9.常用命令:grep

greap aaa 1.txt -n(提示行号) -i(忽略大小写) -v (文档里面搜索aaa)

10. 查找

find ./  -name "*.c"

11.cp 1.txt ./

   cp abc/ ../ -r(文件夹要加-r)

  

1.重定向:

touch 1.txt

touch 2.txt

cat 1.txt 2.txt > abc.txt

2.检索:

按行的搜索Mike并标记: grep a.txt Mike -n

3.grep a.txt -i(忽略大小写) -n(显示行数) -v(取反:即匹配到的都不显示,显示相反的)

 grep a.txt -niv

 grep a test.txt -ni

 grep “a” test.txt -ni

 grep ‘a’ text/txt -ni

 看起来好像是一样的,加不加双引号都行

 但是有一个问题:如果文本中有 

这样的,

grep 1 2 3 test.txt -ni

查找1或者2或者3

这样就不好了,所以最好加上双引号

grep ‘1 2 3’ test.txt -ni

grep ^a test.txt -ni

grep a$ test.txt -ni

里面还可以加各种正则表达式

10.常用命令:find、cp、mv、file

1.ls | grep abc

2.find ./ -name *.c

find ./ -size +12k -size -5M

3.cp 01.c 02.c

 cp abc/ cba -r (递归的拷贝)

要是不加-v就会感觉卡住没提示,所以最号加-v

4.mv mike.c ../

5,file查看文件类型

hello.exe word.txt

 

10.常用命令:tar、gzip

1.磁带归档(打包)

 

tar -cvf  (c代表create v代表进度 f代表file) f必须放在最后

tar -cvf aaaa.tar 1.txt 2.txt /cmd /floder

或者

tar -cvf aaaa.tar *

2.解包:

tar -xvf aaaa.tar (什么都不写 默认是在当前路径)

 tar只负责打包、解包,不进行压缩

打包: tar -cvf xxx.tar 需要打包的文件

解包: tar -xvf xxx.tar (不指定路径,默认在当前路径解包)

   解包指定路径: tart -xvf xxx.tar -C xxxxxx(路劲)

(很特别,如果想指定某个目录,必须加-C)

3.文件压缩

 如何查看某个目录大小:

du ./目录 -h

gzip 压缩tar包

gzip  xxx.tar 自动在当前路径生成xxx.tar.gz

gzip -d xxx.tar.gz

压缩打包:tar -zvcf xxx.tar.gz 所需文件

解压解包:tar -xzvf xxx.tar.gz

将当前目录的都所有文件压缩打包:tar -cvzf xxx.tar.gz *

压缩打包:tar -cjvf xxx.tar.bz2 所需文件

解压打包:tar -xjvf xxx.tar.bz2 -C 指定路径

zip -r test * 把所有的压缩叫test(必须要加-r)

unzip -d ./ test.zip

(为了兼容windows的)

du ./cmd/ -h

常用命令which

which ls

which gc

which sudo

查看命令所在目录

原文地址:https://www.cnblogs.com/eret9616/p/9480168.html