linux笔记
手册查看:
man man 打开手册,man后加路径
以点开头的文件为隐藏文件 -a打开
l开头的文件为长文件 -l打开,显示文件信息
查询目录的ID -i打开 -a-l=-al
带有字节格式 -h 打开
只查文件本身 -a
ctrl+l 清屏
man [-acdfhkktww] [-m系统名][-p<前处理程序>][-c<配置文件>][-m<路径>][-p<浏览方式>][-s<区域清单>][区段名称]
cat 查看 文件内容 .后面+路径
more 或 less 查看文件内容以及进度,多用less 后面+路径
cat/文件/file ptah 显示文件全部内容
/kcy 搜索
head +文件路径 显示文件开头10行
head -n(数字)
tail 末尾
复制 cp-[-r(目录)]
剪切 mv
删除 rm[-r(目录)] rm -rf 强制删除
touch filename 空文件 创造文件
mkdir dirname 空目录 创建目录
关机:shatdown-h now 重启:shutdown + now
power off feboot
init 0 int 6
halt 查看历史目录:hita-y
重启
文件管理
文件属性(元信息)
<1> stat filepath
<2> ls-l(部分)
drwxr-xr-x.z root not 6月26
创建用户 useradd tr用户 us-
修改密码 passwd
文件类型: d
不已后缀区分类型
七种文件类型
regular 普通文件
d directory 目录文件
c charactor 字符设备文件
b block 块 设备文件
l link 符号连接文件
p pipe 管道文件
s socket 套接字文件
文件权限 rwxr-xr-x rwx 拥有组(u)r-x 所属组(g) r-x其他用户(o)
修改文件权限:
<1>chmod o/g/o/a (+-) r/w/x filepath
<2>chmod 0666 filepath(无意义)
修改文件的拥有者和所属组
choun service: group filepath(无意义)
目录文件:
r ls
w touch/mkdir/rm
x cd
防止产生权限过大文件:
umask
mode &~umask==文件真正权限
特殊权限:
v+s---> 所有着此权限的执行文件。可以使普通用户在执行此命令期间,将身体切换为文件拥有着
文件的硬连接的个数是:2
硬连接:同一个文件,多一个名字
inode是同一个分区文件的唯一标示
所以硬连接文件不能跨分区
ln srcpath(原)desf(连接)
cp -l srcpath dest
符号连接(软连接):、
就是一个快捷方式,存储是源文件的路径(可跨分区)
ln-s srcpath dest
cp-s srcpath dest
文件拥有着和所属组:
创建用户:useradd vsername
给定密码:passwd vsername
切换用户:su-vername
删除用户:userdel -r username
登出用户:exit
用户信息:
/etc/passwd
组信息:/etc/group
密码:
etc/shudow
组创建: groupadd groupneme
组创建: groupadd 用户名
用户添加到组中:
gpasswd -a 用户名
用户从组中删除:
gpasswd -d 用户名
文件大小:
文件的大小(size)!=所占磁盘大小(block)
start filepath
block==512bytes
du -sh filepath 查看 filepath对应的文件所占用磁盘空间的大小。
df-h 查看磁盘分区占用情况
文件时间:
suess time 最近访问(访问文件内容时间)
modify time ls-l(内容改变)
change time 属性改变
文件的查找:
可执行文件:
which cmd(命令)
whereis cmd
非可执行文件:
便历数据库:cocate filepath
更新数据库: updatedb
find(便历磁盘空间)
find path options
options:
-name 按名字查找
find/etc/-name"passwd"
-size 按文件大小查找
find/etc/-size n(b/c/k)
-mtime 修改时间
find/etc/-mtime n(天)
-type 类型
find/etc/-type f/d/c/b/p/l/s
-exec 对于查找到的结果执行
find/etc/-name"hello"-exec ls-l {} \;
只对找到的文件执行ls-l结果,不打印路径
-ok 在执行ls-l前会询问
find/etc/-name "hello" -ok ls {} \;
-print 打印查找的结果
find/etc/-name "hello" -print -exec ls-l {} /;
对找到的文件执行ls-l 结果,并打印路径
-a 连接多个查找选项的
find/etc/-type d-a -size+10k
文件的打包压缩:
压缩:
.gz .bz2 .zip bzip2 file
gzip .file 压缩为.gz bunzip2 file .bz2
gunzip file .gz 解压缩
zip xxx. file dir2
unzip xxx.ip
主要: tar options xx.tar filel ...dr....
options:
-C创建 -J:生成x2格式
-v 过程可视 -x:解压缩
-f:在最后跟包名 -C:指定解压路径
-j:生成bz2压缩格式 -t:不解压不解包的情况下查看包中内容
-z 生成g2格式压缩文件 -r向包中追加新文件(只能向包中添加压缩包不可以)
文件重定向:
当用户登陆成功后,三个文件一次打开:
标准输入(stchin 0)标准输出(stdout 1)
标准错误输出(stdew 2)
0<标准输入重定向。(cat 0<txt 列出txt中内容)
1>标准输出重定向
2>标准错误重定向
<<追加(不覆盖之前文件内容)
1管道
ls -l /etc/ | wc -l
-w word 单词个数
-c charac tor 字符个数
grep [-iwn] key filepath ---->筛选文件内容
vim 编辑的使用:
vim filpath --->打开--->一般模式
--->进入编辑模式进行编辑(iIaAO0Ss)
--->从编辑模式进入一般模式(esc/ctrlfc)
--->从一般模式进入命令进入命令行模式(:w保存 q:推出:wq)
一般模式下:
zyy 复制2行 ctrl+r 还原
p 粘贴 x/x 删除光标字符
2dd 剪切2行 r替换
v 撤销 R 一直替换到esc位止
块选择:
ctrl+v 方向建选择 (r/jkr)选择方向
I/A 插入相应内容(成列插入--->esc esc)
gg 前行
G 末行
5G 第五行(n G)
命令模式下:
:
W
Q
q!
W
saeras filepath 另存为
%s /oldstring/newstring/g 将所有oldstring 替换为news
2.55/olds/news/g 将第2行到第5行olds替换为news
set nv 显示行号
set ls=4 将tab设置为4个字符宽度
软件包管理:
源码包 (tar.g2 .tar .bz2 .tor .xz)
<1>下载并解压缩包
<2>编辑intall
<3>make intall
二进制包(.rpm)
yum 安装:cletcl yum。repos。dxxrepo)源的路径
yum intall +文件名.安装下载
yum remde 卸载
yum update 升级
yum repolist 查看服务器软件包
yum provides 查看包名来源+路径
yum list 列出所有的软件包
yum deanall 缓存清除
以下载的rpm软件包的安装
rpm -ivh+包名 /rpm -a 显示系统所有软件包
rpm -e 卸载 rpm -nodeps 不检查依赖性
rpm -q 查询 rpm -u 升级
rpm -q+路径 常洵对应的软件包
网络管理:
查看IP地址:ifconfig--将IP mac 网关等均显示出来
查看mac地址:ipaddr
查看路由表 ip route
查看服务状态 systemctl status + 服务名
关闭服务状态 systemctl stop +服务名
手动配置静态IP:
<1>关闭net workmanger
<2>配置文件:/etc/sysconfig/network -scipts/ifcfg-xxx
<3>重生网络服务:sytemctl restart network
进程管理:ps aus 查看前系中的进程信息
kill-l 列出当前系统中的软信号
kill-2+进程号=ctrl+c 中止
kill-9+进程 干掉一个进程(只要是用户的均可干掉)
man -7 signal 查看信号的行为默认为15
top 实时查看进程信息状态按Q退出
运行进程状态有:R--运行,s--睡眠可中断+->终端
z—>僵尸状体(Zombie)
防火墙:systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
共享文件:
yum install vsftpd(安装)
启动:systemctl status vsftpd
开机自启动:systemctl enable vsftpd
配置文件:/etc/vsftpd/rstpd.conf
get 下载文件 mirror 下载目录文件
lcd 切换下载目录 bye退出
访问共享目录:
下载安装:yum intall lftp
lftp +Ip地址
远程挂载(nsf);
下载安装:yum intall ns -utils rpchind
启动服务:systemctl starnfs
systemctl enable nfs
systemctl starl rpcbind
systemctl enable rpcbind
编辑共享路径:
vim/etc/exports
/var/ftp/pub *(rosynso.no_root_sqush)
客户端挂载:
mount /gz.198.5.129:/var/ftp/pub/mnt
验证:
lfip+IP地址(ls查看当前目录文件)
get+文件名
创建pyenv虚拟环境
sudo yum install openssl *
安装所需的库文件
git clone http://githubcom/yyuu/pyenv.git/pyenv
下载pyenv
echo'export PYENV_ROOT="$Home/.pyenv"'>>~/.bash_profile
echo'export PATH="$PYENV_ROOT/bin:$PATH"'>>~/.bash_profile
echo'eval"(pyenv int-)"'>>~/.bash_profile
exec $SHELL 重启客户端运行的程序(shell)
source ~/.bash_profile 重新加载配置文件.bash_profile
pyenv install --list 列出所有我们可以通过pyenv安装的python版本
pyenv nstall-v3.6.4用pyenv命令安装python3.6.4
yenv versions 查看当前系统中所有的python版本
pyenv version 查看当前所使用的版本
pyenv global 3.6.4 将使用版本切换到3.6.4
pyenv version
python (使用pyenv时输入 ipython ,ctrl+d退出)
Git的基本使用
创建仓库
登陆github账号,创建远程仓库
同步到本地
生成key:
ssh—keygen
cat ~ /.ssh/id_rsa.pub (将密钥复制到github账号的key中)
克隆到本地:
git clone git@************* ***为电脑生成地址
基本指令:
git add . 追踪
git commit - m “***” 备注并移至仓库
git push 提交到远程仓库(github账号中)
git pull 同步到本地或云端
(当修改文件之后,使用git status 指令查看是否有残余进程,如果有先git add追踪,在git commit - m备注)
git status 查查看仓库状态
git log 查看仓库日志(查看某个时间段进程的ID,用于退档)
git reset - -hard【id】 切换到某个版本
git reflog 查看最新版本日志
git rm 删除 ps aux 查看当前进程
:x