【Linux基本操作】Day1

基本操作*的部分为重点

  • 1. 命令解析器:
  • 2. Linux 快捷键
  • 3. Linux系统目录结构:
  • 4. 用户目录:
  • *5. 文件和目录操作
    • 1>. (列出目录)
    • 2>. (路径转换):
    • 3>.(创建目录)
    • 4>. (删除空空目录)
    • 5>.(目录里创建文件):
    • 6>. (删除所有东西):
    • 7>. (复制文件或目录)
    • 8>. (查看文件的具体信息5种方式 了解即可):
    • 9>. (ln 快捷方式 软连接):
    • 10>. (ln 创建硬链接)
    • 11>. mv命令改名字或移动
  • 6. 文件或目录属性: (理解内容, 非重点)
  • *7. 文件权限, 用户, 用户组
    • 1>. 查看当前登录用户:
    • 2>. 修改文件权限:
      • 1). 文字设定法: chmod [who] [+|-|=] [mode]
      • 2). 数字设定法:
    • 3>. 改变文件或目录的所有者或所属组:
      • 4>. 改变文件或目录所属的组:
      • 5>. 添加新用户
  • *8. 查找和检索
    • 1>. find 按文件属性查找:
    • 2>. gerp 按文件内容查找:
  • 9. 软件的安装和卸载
    • 1>. 在线安装:
    • 2>. deb包安装:
    • 3>. 源码安装:
  • 10. U盘的挂载和卸载
    • /midia目录挂载
    • /mnt目录挂载

1. 命令解析器:

	shell -- unix操作系统
	bash -- Linux操作系统
本质: 根据命令的名字, 调用对应的可执行程序

2. Linux 快捷键

			1>. 命令和路径补齐: tab键补齐
			2>. 主键盘快捷键:
					**1). 历史命令切换:** 
							历史命令:history 
							向上遍历:CTRL+p
							向下遍历:ctrl+n
					**2). 光标移动:**
							向左:ctrl+b
							向右:ctrl+f
							移动到头部:ctrl+a
							移动到尾部:ctrl+e
					**3). 删除字符:**
							删除光标后边的字符:ctrl+d
							删除光标前边的字符:ctrl+h 或者 backspace
							删除光标前的所有内容:ctrl+u

3. Linux系统目录结构:

1>. 根目录:
2>. /bin: binary 存放经常使用的命令
3>. /dev: 设备文件(鼠标键盘等)
4>. /etc:配置文件
5>. /home:用户
6>. /lib:动态链接库 dll
7>. /media:自动挂载外设
8>. /mnt:手动挂载外设
9>. /root:系统管理员目录
10>. /usr:用户软件资源目录 类似win的program file
11>./boot 开机启动项文件等

4. 用户目录:

1>. 绝对路径: 从根目录开始写 /home/itcast/aa
2>. 相对路径: bb 相对于当前的工作目录而言
. -> 当前目录
… -> 当前的上一级目录
- -> 在临近的两个目录直接切换 cd -
3>. itcast@ubuntu:~$
itcast: 当前登录用户
@: at 在
ubuntu: 主机名
~: 用户的家目录(宿主目录)
$: 当前用户为普通用户
#: 超级用户 – root
4>.切换至管理员 sudo su
退出管理员 exit
liuj的宿主目录/家目录 /home/liuj/

*5. 文件和目录操作

1>. (列出目录)

1). tree – 必须安装该软件
文件类型根据颜色分类 文件夹是蓝色 黄色 设备文件 白色 普通文件
2). ls 查看当前目录下文件
ls -a 查看全部文件 .文件 具有隐藏属性
ls -l 有详细信息
ls -la 全部文件详细信息
【Linux基本操作】Day1_第1张图片
r 表示read w write x do(执行权限)
存储空间 如果是文件 大小为实际大小 目录文件夹 占用固定4096
d 目录 类似快捷方式

2>. (路径转换):

				cd 情人目录
				cd 路径
			回家安抚老婆孩子: (三种回家方式,回到根目录)
				cd /home/liuj
				cd ~
				cd
			查看我当前是在老婆, 前妻, 还是情人的床上:(查看当前路径)
				pwd

3>.(创建目录)

一间小屋: mkdir newdir
一套别墅: mkdir dir/dir1/dir2 -p (加-p之后dir,dir1不存在也可以创建)
cat /PDPC/out.sh 输出文件
touch /PDPC/out.sh 如果文件不存在 创建文件 文件存在 修改文件的时间

4>. (删除空空目录)

rmdir aa

rmdir只能删除空目录(aa必须为空)

rm PDPC -r

删除目录(不可还原)-r表示递归 PDPC文件夹也被删除了

rm -ri PDPC 

会有提示 一个一个地删除

5>.(目录里创建文件):

touch out.sh 创建新文件
touch hello.c 已存在的文件会修改时间

6>. (删除所有东西):

rm out.sh

7>. (复制文件或目录)

cp hello.c tmp//把helle.c的内容拷贝到tmp文件中,tmp文件不存在就创建,tmp存在就覆盖掉原来的内容
cp -r PDPC newdir //把PDPC中的文件拷贝到newdir newdir不存在就创建 如果存在的话 就把PDPC的目录一起拷贝到newdir中
cp -r PDPC/* dir/ //只把目录里面的内容拷贝到dir中 不拷贝PDPC文件夹

8>. (查看文件的具体信息5种方式 了解即可):

  1. cat out.sh //输出out.sh 到屏幕上 文件太长就不适用了
  2. more out.sh //按回车键翻页 一行一行地切换显示 按空格 会显示一屏 只能往后看 按q键或者ctrl+c退出
  3. less out.sh //可以翻页 ctrl+p可以向前看 ctrl+b向后显示 ctrl+b 向前翻页 ctrl+f后翻页 q退出
  4. head out.sh //默认显示前10行内容
    head out.sh -5 //查看前10行的内容
  5. tail out.sh //默认后10行

9>. (ln 快捷方式 软连接):

ln -s out.sh newname.soft //把out.sh 创建一个叫newname.soft的快捷方式 没有复制内容 newname.soft移动之后就不能使用了
ln -s /home/liuj/out.sh newname.soft//移动之后依然可以使用 使用绝对路径(一般使用绝对路径)

10>. (ln 创建硬链接)

ln out.sh newname.soft//没有发生拷贝 不占用实际的存储空间 硬链接计数加1 对于 out.sh 和 newname.soft都成了2(类似引用)通过inode查找内存位置 修改out.sh后 newnmae.soft也会变化
*ps目录不能创建硬链接
1.文件副本形式存在但不占用空间
2.不可以给目录创建硬链接
3.硬链接只能在同一个文件系统下创建
4.硬链接可以同步更新

11>. mv命令改名字或移动

mv out.sh PDPC //把文件移动到目录里
mu out.sh out1.sh //文件改名字

6. 文件或目录属性: (理解内容, 非重点)

1>. wc 获取文本文件的信息 行树 单词个数(以空格为准)字节数
2>. od 获取二进制文件的信息
od -t 指定格式 (c ASCII码形式 还有二进制八进制十进制等)
3>. du 查看当前目录的大小 du -h 查看大小
4>. df 查看磁盘使用清空 df -h
5>. which 查看命令所在的目录 如 which cp 结果为ls的位置 /bin/ls

*7. 文件权限, 用户, 用户组

1>. 查看当前登录用户:

whoami //查看当前用户

2>. 修改文件权限:

1). 文字设定法: chmod [who] [+|-|=] [mode]

						who: 
							文件所有者: u
							文件所属组: g
							其他人:     o
							所有的人:   a
						+: 添加权限:
						-: 减少权限
						=: 覆盖原来的权限
						mode:
							r: 读
							w: 写
							x: 执行

chmod o+w 1.txt 给其他人加写权限

2). 数字设定法:

– : 没有权限
r: 4
w: 2
x: 1
7满权限
765
7 – rwx – 文件所有者
6 – rw – 文件所属组
5 – rx – 其他人
chmod 777 1.txt把文件所有者所有组都设置为满权限
chmod -001 1.txt 削减其他人的执行权限

3>. 改变文件或目录的所有者或所属组:

重点 chmod和chown
文件不一定属于所有者所在的组,可以属于group1中的人,但是属于group2组,group3组属于其他人
sudo chown user1 1.txt //改变所有者
sudo chown user1:user2 1.txt//改变所有者和所属组

4>. 改变文件或目录所属的组:

sudo chgrp user3 1.txt//改变所属组
目录没有执行权限就无法访问 进不去目录 也无法查看详细信息 ls -l就会权限不够

5>. 添加新用户

输入命令:mqk@HPZ640-1:~$ sudo adduser tt添加用户名字叫tt

*8. 查找和检索

1>. find 按文件属性查找:

1). 文件名:find + 查找的目录 + -name + “文件的名字”
find /home/liuj/ -name "1.txt“ 在当前目录下找 1.txt
使用通配符:
代表一个字符 *代表多个字符
find /home/liuj/ -name "ou*.txt“
2). 文件大小: find + 查找目录 + -size + +10k
sudo find ~ -size -10K //size小于10k的文件
sudo find ~ -size +10M -size - 100M //大于10M小于100M 的文件
3). 文件类型: find + 查找目录 + -type + d/f/b/c/s/p/l
sudo find /home/liuj/ -type d //查找类型为目录的文件

2>. gerp 按文件内容查找:

grep -r “查找的内容” + 查找的路径
grep -r "stdio.h" ~ //在家目录下查找包含字符stdio.h的文件

9. 软件的安装和卸载

1>. 在线安装:

	1.apt-get
	安装 sudo apt-get install tree在线下载安装
	移除 sudo apt-get remove tree 移除
	更新 sudo apt-get update 更新软件列表
	软件列表里包含软件的名字和下载地址(从官方服务器更新)
	sudo apt-get clean 删除安装包(var/cache/apt/archives/下的.deb文件)
	2.aptitude (下载软件)

2>. deb包安装:

网上下载的deb安装包安装
sudo dpkg -i subline.deb //安装subline软件
sudo dpkg -r subline-text //卸载软件

3>. 源码安装:

看readme文件
1.解压缩
2.进入安装目录
3.查找configure文件 创建makefile
4.编译源码,生成库和可执行程序:make
5.把库和可执行程序安装到系统目录下: sudo make install
6.卸载
案例: 安装 svn
a. ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
b. make
c. sudo make install

10. U盘的挂载和卸载

/midia目录挂载

插上u盘自动挂载到虚拟机 把虚拟机全屏后就可以自动挂载了
卸载u盘 umount /meida/itcat/ESD-USB

/mnt目录挂载

mount deviceName /mnt
sudo fdisk -l 查看当前U盘的名字
【Linux基本操作】Day1_第2张图片
挂载 sudo mount /dev/sdb1 /mnt
取数据 cp aaa.txt /home/itcat/1Day
卸载 (当前目录不能是mnt目录 需要先退出mnt目录)sudo umount /mnt
sd是硬盘
挂载到其他目录下 会临时覆盖该目录下的内容

你可能感兴趣的:(Linux系统编程,linux)