Linux_base笔记

Linux基础笔记

  1. 初始shell命令

(1)命令组成 : 命令 [选项] [参数]  (之间用空格隔开)

eg: ls -l /home

ls——命令:整条命令的主题

-l——选项:会影响会微调命令的行为

/home——参数:命令作用的对象

 

(2)Tab可自动补全命令和文件

(3)快捷键:

           ^C :终止前台运行的程序 (^C 即 Ctrl+C )

^D :推出 (exit)

^L :清屏

  1. 常用命令

(1)       ls 列出所包含类容

a)         –a:(all)查看目录下的所有文件,包含隐含文件

b)         –l:(long)吃那个列表显示

c)         –i:(inode)显示文件的索引号(inode号)

d)         –d:(directory)只列处目录名,不显示其他内容

e)         –h:(human)显示单位,以人性化方式显示

(2)       cd切换工作路径

绝对路径:从/开始

相对路径:从 . 或 .. 开始(. 当前 , ..上一级)

(3)       pwd显示当前工作路径

(4)       查看文件内容

a)         cat显示文件内容

b)         less显示文件内容(比cat更灵活,可按屏显示,/+关键字 可进行搜索,q退出)

c)         head –n 显示文件前n行

d)         tail –n 显示文件最后n行

(5)       复制、剪切

a)         cp 复制(目录需加 -r)

b)         mv 剪贴(目录需加 –r ,强制删除 -f )

(6)       删除

rm ( 目录需加 –r ,强制删除 –f )

(7)       创建文件、目录

a)         touch filename 创建空文件

b)         mkdir dirname 创建空目录

(8)       关机、重启

a)         关机

                                       i.              Shutdown –h now

                                     ii.              Poweroff

                                    iii.              Half

                                    iv.              Init 0

b)         重启

                                       i.              Shutdown –r now

                                     ii.              Reboot

                                    iii.              Init 6

(9)       查看历史命令

history

(10)   查看手册

(11)   Linux获得帮助

a)         –help

b)         man

  1. 区段1:用户指令
  2. 区段2:系统调用
  3. 区段3:程序库调用
  4. 区段4:设备
  5. 区段5:文件格式
  6. 区段6:游戏
  7. 区段7:杂项
  8. 区段8:系统指令
  9. 区段9:内核内部指令
  10. 区段n:Tcl或Tk指令
  11. 文件管理

(1)       Linux一切皆文件

(2)       显示文件信息

a)         stat filepath

b)         ls –l 显示内容各个字段解析

                                     i.               文件属性(占10个字符空间)

  1.  第一个字符:表示文件类型

Linux的七种文件类型

                                -        regular              普通文件

                                d       directory           目录文件

                                c       character                   字符设备文件

                                b       block                  块设备文件

                                l        link                      符号链接文件

                                p       pipe                    管道文件

                                s       socket                套接字文件

             2.      后九个字符:表示文件权限

          拥有着 所属组 其他用用户(3个3位二进制,可用3个八进制表示)

                                u     g        o             a(all)

权限

文件

目录

r(读取)

读取文件的内容( cat )

列出目录的内容(ls)

w(写入)

更改文件内容( echo )

创建和删除目录的文件( touch/mkdir/rm )

x(执行)

作为命令执行文件

可访问目录文件的内容(cd)

             修改文件权限:chomd

                       chomd u/g/o/a  (- +)  r/w/x  filepath

                       chomd 0755 filepath

             修改文件的所有者和所属组

                       chown username:groupname filepath

             umask码:用于防止权限过大的文件

                       文件的真正权限:~umask  & mode

                                   ii.              文件的硬链接个数

硬链接:同一个文件多个名字

           Inode是同一个分区文件的唯一标识(硬链接文件不能跨分区)

         ln srcpath dest 创建硬链接

软连接(符号链接:相当于快捷方式,存储源文件的路径,可跨分区)

           创建软连接:

                    ln –s srcpath dest

                    cp –s srcpath dest

                                  iii.              文件拥有者、所有者

useradd username 创建用户

passwd username 为用户设置密码

su – username 切换用户

exit 登出用户

groupadd groupname 创建用户

groupdel groupname 删除组

gpasswd –a username groupname 将用户添加到组中

gpasswd –d username groupname将用户从组中删除

 

/etc/passwd      用户信息

/etc/group         组信息

/etc/shadow     密码

 

                                  iv.              文件大小

ls –l 中所显示的文件大小不等于文件所占磁盘大小

                    Linux中磁盘以块为单位,最小单位8block(1block =512bytes)

                    stat  filename

du -sh filepath 查看文件对应的文件所占用磁盘空间的大小

df -h 查看磁盘分区占用情况(包括挂载点)

                                   v.              文件时间

Access time最近访问

 

Modify time最近更改(ls –l 所显示时间)

内容改变

Change time最近改动

属性改变

           内容分改变会引起属性的改变(内容改变后字节数会变)

(3)       文件查找

a)         可执行文件

                                     i.              which cmd

                                   ii.              whereis cmd

b)         非可执行文件

                                     i.              locate  filepath遍历数据库

                                   ii.              updated 更新数据库

                                  iii.              find

       find path options

                                         -name 按名字找

                                         -size 按文件大小查找

                                         -mtime 修改时间

                                         find /etc/ -mtime n(天)

                                         -type 类型

                                         -exec 对于查找到的结果执行

                                         -ok在执行ls -l之前会询问

                                         -a 连接多个查找选项的

                                                  

(4)       文件打包压缩

                                     i.              主要tar options xx.tar.xx file1.... dir.....

                    options:

                             -c 创建

                             -v 过程可视

                             -f 在最后,后跟包名

                             -j 生成bz2压缩格式

                             -z 生成gz格式压缩文件

                             -J 生成xz格式

                             -x 解压缩

                             -C 指定解压路径

                             -t 不解压不解包的情况下查看压缩包中内容

                             -r 向包中追加新文件

ii.      压缩:

           .gz .bz2 .zip

 

gzip file 压缩为.gz

           gunzip file.gz 解压缩

          

bzip2 file

           bunzip2 file.bz2

 

           zip xxx.zip file dir1 dir2

                    unzip xxxzip

(5)       文件重定向

a)         当用户登陆成功后,三个文件依次打开:

标准输入(stdin 0) 标准输出(stdout 1) 标准错误输出(stderr 2)

                                               i.       0> 标准输入重定向

                                              ii.      1>(可省略1直接使用>)标准输出重定向

iii.    2>标准错误输出重

iv.     >> 追加

b)         管道 |

                                     i.              wc

wc [-lwc] filepath

-l line 统计filepath文件的行数

-w word   单词个数

           -c charactor 字符个数

                                   ii.              grep

grep [-iwn] key filepath

         -I --ignore-case 忽略大小写

         -w --word-regexp 精确查找

         -n --line-number在输出的每行前面加上它所在的文件中它的行号

注:find 查找文件;筛选文件内容

        

  1. vim编辑器的使用

vim filepath---->打开--->一般模式

           --->进入编辑模式进行编辑(iIaAoOsS)

           --->从编辑模式进入一般模式(Esc / Ctrl+c)

           --->从一般模式进入命令行模式(:w保存 :q退出)

  1. 软件包管理

a)         源码包

<1>下载并解压解包

<2>编译make

         <3>make install

b)         二进制包( .rpm )

yum install xxxx 安装

                                     例如有如下软件包:

                                     coreutils-8.22-21.el7.x86_64.rpm

                                     yum install coreutils  (coreutils包名)

                            yum update xxxx 更新

yum remove xxxx 卸载

                            yum repolist 查看仓库中有多少软件包

                            yum list 列出所有的软件包

                            yum provides /usr/bin/ls 查看文件对应的软件包

                            yum update coreutils 更新

                            yum clean all 清除缓存

                   本地yum源配置:

                            1.将镜像文件挂载到文件系统

                            2.创建镜像的挂载点 mkdir /mnt/centos7

                            3.光盘镜像在/dev/cdrom目录

                            4.挂载光盘镜像

                                     mount -t iso9660 -o loop /dev/cdrom /mnt/centos7

                            5.配置镜像的yum源

                                     vim /etc/yum.repos.d/my.repo                

                                     [local_centos7]

                                     name=centos7

                                     baseurl=file:///mnt/centos7

                                     enabled=1

                                     gpgcheck=0

c)         已下载的rpm软件包,安装:

         xxxx.rpm

                                    

                            rpm -ivh xxxx 安装已下载的rpm包

                            rpm -e xxxx 卸载

                            rpm -U xxxx 更新

                            rpm -qa 查询系统中所有已安装的rpm包

         rpm -qf /usr/bin/ls 查询ls对应的软件包

 

  1. 网络管理

a)         查看         ip, mac, netmask....

                  ip addr

                  ifconfig             

查看/启动/重启/关闭/自启动/禁用服务

                   systemctl status/start/restart/stop/enable/disable 服务名字

b)         手动配置静态ip地址

c)         防火墙

d)         vsftpd服务 (文件共享)

e)         nfs远程挂载

服务器配置:

下载安装:

                   yum install nfs-utils rpcbind

启动:

                                      systemctl start nfs

                                     systemctl enable nfs

                                     systemctl start rpcbind

                                     systemctl enable rpcbind

编辑共享路径:

         vim /etc/exports

         /var/ftp/pub *(ro,sync,no_root_squash)        

客户端挂载:

                            mount 192.168.5.129:/var/ftp/pub /mnt

 

  1. 进程管理

a)         ps aux       查看进程信息

b)         终止进程通过kill 发送信号

         kill -l查看所有的信号

         kill -9 num发送9号信号给进程号num号进程

c)         top 实时查看系统中进程的运行状态

  1. 创建pyenv虚拟环境

yum install openssl*   安装其所需要的库文件

           (普通用户 sudo yum install openssl*)

git clone https://github.com/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 init -)"' >> ~/.bash_profile

exec $SHELL               重启终端运行的程序(shell)

source ~/.bash_profile      重新加载配置文件.bash_profile

pyenv  install --list  列出所有我们可以通过pyenv安装的python版本

pyenv install -v 3.6.4          用pyenv命令安装python3.6.4

pyenv versions  查看当前系统中所有的python版本

pyenv version    查看当前所使用的版本

pyenv global 3.6.4     将使用版本切换到3.6.4

pyenv version

python

成功后 重启计算机

  1. 使用GitHub进行项目管理

a)         创建仓库

登陆github帐号,创建远程仓库

同步到本地

生成key:

         ssh-keygen

         cat ~/.ssh/id_rsa.pub 将密钥复制到帐号的key

git clone url

b)         基本使用命令

git add .---->追踪

git commit -m "备注" ---->提交到仓库

git push ---->提交到远程仓库

git pull ---->下载到本地仓库

git status ---->查看仓库状态

git log ----->查看仓库日志(id)

git reset --hard id ----->切换到指定版本

git reflog ----->查看最新版本日志

         git rm ----->删除

(常用git命令清单参考:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html

 

        

  1. 新建代码库                
  2. 配置
  3. iii.    增加、删除文件
  4. 代码提交
  5. 分支
  6. 标签
  7. 查看信息
  8. 远程同步
  9. 撤销
  10. 其他

 

posted @ 2018-12-03 14:26  TyroneYang  阅读(218)  评论(0编辑  收藏  举报