标签:win $path 快速 ref 管理 birt python解释器 shell 下载工具
1. 创建一个文件夹 mkdir test 2. 递归创建 在当前位置创建a/b/c mkdir -p a/b/c 3. 递归创建a/b和c/d mkdir -p a/b c/d 4. 递归创建test/a,b,c三个文件夹 /test/a /test/b /test/c mkdir -p test/{a,b,c}
touch test.py
touch -t ‘年月日时分秒‘ 文件 其中年和秒是可选的 touch -t ‘201901072220‘ test.py 2019年1月7日22点20分
1. ls命令的参数 -l 以树桩显示文件夹内容,详细信息 -a 显示隐藏内容 -la 显示目录内容的详细信息,且显示隐藏文件 2. 示例 ls --> 查看当前路径下的内容 ls /tmp --> 查看指定路径下的内容 ls -l --> 查看当前路径下的内容的详细信息 ls -a --> 查看当前路径下的内容,包括隐藏文件 ls -la --> 查看当前路径下的内容的详细信息,包括隐藏文件 ls -l 简写 ll
pwd
1. 普通查看 cat test.py 2. 查看文件,显示行号 cat -n test.py 3. 在每一行的结尾加上$符 cat -E test.py 4. 查看文件,显示行号并在每一行的结尾加上$符 cat -n -E test.py 5. 追加内容 [root@localhost tmp]# cat >> test.py << EOF > 嘿嘿嘿 > EOF 6. tac tac就是cat倒过来写, 输出的内容也是倒过来输出的
1. more more命令用于查看内容较多的文本,例如要看一个很长的配置文件,cat查看内容屏幕会快速翻滚到结尾。 more命令查看文本会以百分比形式告知已经看到了多少,使用回车键向下读取内容。 more /etc/passwd 空格space:翻页 b键:上一页 回车键:向下读取内容 q键:退出more 缺点:more模式下,不能向前面翻页 2. less less /etc/passwd [pagedown]: 向下翻动一页 [pageup]: 向上翻动一页 b键:向后翻一页 d键:向后翻半页 u键:向前滚动半页 y键:向前滚动一行 q键:退出less 同时查看多个文件 less /etc/passwd test.py 默认查看第一个文件 输入 n 后,切换到 test.py 输入 p 后,切换到/etc/passwd
查看/etc下的所有内容
ls /etc*
cd(change directory) 更改目录
. 当前目录
.. 上一级目录
~ 家目录
- 上一次所在的目录
cd ~ cd - cd /home
mv(move) 移动目录/文件
mv 你想移动的对象 移动到哪
mv /tmp/test.py /home
mv还有一个重命名的作用
mv 旧的文件名 新的文件名
mv test.py test2222.py
输出 > 输入 echo "Hello Linux" > test.py ls > test.py
删除命令慎用!看好!
删除命令慎用!看好!
删除命令慎用!看好!
1. 参数 -r 递归删除目录和内容 -i 需要删除确认(rm命令默认就有-i参数) -f 强制删除,不需要确认 2. 删除文件 rm 文件名 rm test.py 3. 删除目录 rm -r a 需要删除确认 rm -rf a 不需要删除确认 4. 删除所有东西 rm -rf /路径* !!!!慎用 5.删除空文件夹 rmdir 空文件夹
1. 例如:[root@localhost tmp]# root:用户名 @:占位符 localhost:主机名 tmp:当前所在的路径 2. 查看主机名 hostname 3. 修改主机名 hostnamectl set-hostname ZBJ 退出会话重新登录后生效 4. 修改命令提示符 通过修改PS1变量来控制命令提示符的显示 \u 用户名 \h 主机名 \W 最后一位工作目录 \w 绝对路径工作目录 \t 显示24h制的时间 默认的PS1是:[\u@\h \W]\$ --> [用户名@主机名 最后一位工作目录]$ 我们可以修改 PS1="[\u@\h \w \t]\$" --> [用户名@主机名 挤兑路径工作目录 时间]$ 5. 默认终端 linux系统默认有 f1-f7 7个终端,使用 ctrl + alt + f1~f7进行切换 默认 f1终端是 图形化终端
useradd 用户名
passwd 用户名
vi命令,就是linux下一个文本编辑器,如同windows的记事本 vim 这个命令就是加强版的记事本,notepad++ 写入文件内容 1.vi test.py 进入vi命令模式,输入i命令,进入编辑模式 2.在编辑模式下写入 如果要让python支持中文 #coding:utf8 print("第一次来深圳,很开心!!" ) 3.按下esc回到命令模式,退出编辑模式 4.输入:wq! 写入保存代码 : 进入底线命令模式 :w 将文件内容写入 :q 不保存退出 :q! 不保存强制退出 :x 保存退出 :wq! 强制保存退出 5.python test.py 执行代码脚本 6. 显示/隐藏行号 1. 显示行号 :set number 或者 :set nu 2. 取消行号显示 :set nu!
tab 命令补全键 ctrl + d 退出会话 ctrl + shift + r 快速登录上一次的会话 ctrl + l 清理终端显示(相当于clear)
clear 清屏
退出当前会话 logout
1. 类比windows中的环境变量 当你在系统中配置了python的环境变量, 当你在cmd中直接输入python这个相对路径的命令时, 系统就会去从path中一个一个去找,找到你配置的python的环境变量,然后执行这个目录下python.exe, 因此你才能直接在cmd输入python进入python解释器,如果没有配置环境变量,在cmd中也是可以执行的, 只是麻烦一些,需要输入python解释器的路径\python,例如 C:\Python\Python36\python 注意 path是有优先级的,且windows中环境变量以分号 ; 区分不同的环境变量。 更重要的是,环境变量只能配置到目录,不能是文件。 2. Linux中的环境变量 linux的变量定义,不能含有空格,环境变量以冒号 : 区分不同的环境变量。
命令:tzselect
根据提示修改即可
显示文件或文件系统的状态。 用法 stat [参数] 文件 参数列表: -L --dereference 跟随链接 -f --file-system 显示文件系统状态而非文件状态 -c --format=格式 使用指定输出格式代替默认值,每用一次指定格式换一新行 --printf=格式 类似 --format,但是会解释反斜杠转义符,不使用换行作输出结尾。 如果你仍希望使用换行,可以在格式中加入"\n" -t --terse 使用简洁格式输出 --help 显示此帮助信息并退出 --version 显示版本信息并退出 格式化输出参数: %a 八进制权限 %A 用可读性较好的方式输出权限 #实例1 [root@master tmp]# stat 1.txt File: ‘1.txt‘ Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd00h/64768d Inode: 17348002 Links: 1 (权限)Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) (最近访问)Access: 2018-07-10 15:30:00.000000000 +0800 (最近更改)Modify: 2018-07-10 15:30:00.000000000 +0800 (最近改动)Change: 2018-11-07 15:38:36.400989868 +0800 Birth: - #实例2,显示文件权限 [root@master tmp]# stat -c %a 1.txt 644 [root@master tmp]# stat -c %A 1.txt -rw-r--r--
echo命令用于在终端输出字符串或变量提取后的值,格式是 echo 字符串|$变量 把内容显示到终端上 echo "你好,绿光" 把变量显示到终端上 echo $PATH 把内容写入文件 echo "你好,绿光" > /tmp/test.py
# 输入/输出 重定向符号 1.> 重定向符号,清空原文件所有内容,再写入新的内容 2.>> 追加重定向,把新的内容追加到文件的结尾 3.< 输入重定向,清空原文件所有内容,再写入输入的新内容 4.<< 输入重定向,把输入的新内容追加到文件的结尾 echo "绿光" > /tmp/test.py # 会清空test.py原本的内容,再写入新的内容 echo "是你" >> /tmp/test.py # 会在原本的内容后面追加新的内容 cat >> /tmp/test.py << EOF ip addr > /tmp/test.py #把命令执行结果信息,放入到文件中
1. 拷贝test.py到/etc目录下 cp test.py /etc/ 2. 复制test.py顺便改名为test2.py cp test.py /etc/test2.py 3. 参数 cp -r 递归,复制目录以及目录的子孙后代 cp -p 复制文件,同时保持文件属性不变 可以用stat cp -a 相当于-pdr 递归复制test1文件夹,改名为test2 cp -r test test2 cp是个好命令,操作文件前,先备份 cp test.py test.py.bak
1. 查找命令文件的绝对路径 which 命令 which ls 2. 查看当前使用的用户 whoami 3. 查看命令的帮助手册 命令 --help 查看简略的手册 man 命令 进入less模式查看命令手册 ls --help man ls 4. 查看linux进程信息 命令:ps # 相当于windows的任务管理器 参数: -e 显示所有进程 -f 全格式 示例: ps -e 显示所有进程,且显示进程所使用的环境变量。 ps -f 用ASCII字符显示树状结构,表达程序间的相互关系 ps -ef 是用标准的格式显示进程!!! UID PID PPID C STIME TTY TIME CMD root 2 0 0 15:41 ? 00:00:00 [kthreadd] root 87794 87790 0 17:18 pts/0 00:00:00 -bash 其中各列的内容意思如下: UID //用户ID、但输出的是用户名 PID //进程的ID PPID //父进程ID C //进程占用CPU的百分比 STIME //进程启动到现在的时间 TTY //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 CMD //命令的名称和参数 ps aux 是用BSD的格式来显示,跟ps -ef相类似!!! 5. 查看端口 命令:netstat 参数: -a (all)显示所有选项,netstat默认不显示LISTEN相关 -t (tcp)仅显示tcp相关选项 -u (udp)仅显示udp相关选项 -n 拒绝显示别名,能显示数字的全部转化成数字。(重要) -l 仅列出有在 Listen (监听) 的服務状态 -p 显示建立相关链接的程序名(macOS中表示协议 -p protocol) -r 显示路由信息,路由表 -e 显示扩展信息,例如uid等 -s 按各个协议进行统计 (重要) -c 每隔一个固定时间,执行该netstat命令。 示例: 列出所有端口: netstat -a 列出所有tcp端口: netstat -at 列出所有udp端口: netstat -au 常用: netstat -tunlp
1. 查看系统默认有哪些别名 alias 可以看到一些命令的默认别名 alias cp=‘cp -i‘ alias egrep=‘egrep --color=auto‘ alias fgrep=‘fgrep --color=auto‘ alias grep=‘grep --color=auto‘ alias l.=‘ls -d .* --color=auto‘ alias ll=‘ls -l --color=auto‘ alias ls=‘ls --color=auto‘ alias mv=‘mv -i‘ alias rm=‘rm -i‘ alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘ 查看某个命令的别名 alias rm 2. 别名作用 我们在linux中使用cp时候相当于执行了cp -i -i:覆盖已有文件或目录之前先询问用户 别名是为了让你在使用比较危险的操作,给你一些提示,防止你犯错 3. 如何设置别名 alias rm="echo ‘别删库呀,跑路都跑不了!‘" 下次出现rm命令时,就只会在终端显示‘别删库呀,跑路都跑不了!‘,而不会执行删除操作了。 但是退出登录后,再次登录,rm命令的别名就会恢复为系统默认的别名。 4. 让设置的别名永久生效 写入到/etc/profile(针对登录用户的合同,设置环境变量) 第一步:vim /etc/profile #编辑文件 第二步:按大写的G键,快速定位到最后一行 第三步:按小写的o键,在当前行的下一行,创建一个新行,进入编辑模式 第四步:把这句代码 source /etc/profile 写在新行,保存退出 #读取文件(合同生效) 5. 取消别名 unalias rm
1. find语法 find 在哪里找(目录) [找什么类型的文件] 要找的文件名是什么 2. 参数 -name 按照文件名查找文件 -type 查找某一类型的文件,诸如: f - 普通文件 d - 目录 l - 符号链接文件(快捷方式) b - 块设备文件 c - 字符设备文件 p - 管道文件 s - socket文件 3. 例子 # 找到/etc下网卡的配置文件(名字是以 ifcfg开头) find /etc/ -name ifcfg* # 找到/etc下所有名字以host开头的文件(引号加不加都行) find /etc/ -name ‘host*‘ # 找到/opt上一个名为settings.py find /opt/ -name ‘settings.py‘ # 找出/tmp所有以 .txt结尾的文件 find /tmp/ -type f -name "*.txt"
global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来, 是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 1. 语法 grep [参数] [--color=auto] [字符串] filename 参数详解: -i : 忽略大小写 -n : 输出行号 -v : 反向选择 --color=auto : 给关键词部分添加颜色 2. grep常用操作 grep "你想搜索的内容" 在哪里搜索(文件) 3. 示例 grep ‘root‘ passwd 在passwd文件中找到有"root"内容的所有行 grep -n ‘root‘ passwd 在passwd文件中找到有"root"内容的所有行,并显示行号 grep -i ‘ROOT‘ passwd 在passwd文件中找到有"ROOT"内容的所有行,忽略大小写 grep -v ‘root‘ passwd 在passwd文件中找到没有"root"内容的行 grep -n -i ‘Root‘ passwd 在passwd文件中找到有"Root"内容的行,且忽略大小写
1. 用法 Linux提供的管道符“|”将两条命令隔开,管道符左边命令的输出会作为管道符右边命令的输入。 命令1 | 命令2 |命令3 --> 把命令1的结果传到命令2中,由命令2对其进行二次处理,再把结果给命令3进行第三次处理... 2. 例子 找到/tmp目录下所有txt文件 ls /tmp/|grep ‘.txt‘ # ls /tmp/的结果相当于生成了一个含有/tmp/目录所有文件名的文件,把结果传给grep命令,grep在结果找‘.txt‘结尾的 检查nginx的端口是否存活 netstat -tunlp |grep nginx
history 查看操作历史记录
tree 路径 树状图的形式查看目录结构(需要下载 yum install tree -y)
1. 命令 head [-n] 某个文件:显示文件前几行,n默认是10 tail [-n] 某个文件:显示文件后几行,n默认是10 2. 示例 查看前两行 head -2 test.py 查看后两行 tail -2 test.py 显示文件10-20行之间的内容!!! 思路:先拿到前20行,然后通过管道符,丢给第二个命令 tail去处理 head -20 test.py | tail -11 3. tail的-f参数 持续刷新显示文件的内容 tail -f test.py // 会一直夯在那里,只有test.py被修改了,立刻把修改的内容也显示出来
sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。 1. 命令格式 sed [options] ‘command‘ file(s) sed [options] -f scriptfile file(s) 2. 参数 -e<script>或--expression=<script>:以选项中的指定的script来处理输入的文本文件; -f<script文件>或--file=<script文件>:以选项中指定的script文件来处理输入的文本文件; -h或--help:显示帮助; -n或--quiet或——silent:仅显示script处理后的结果; -V或--version:显示版本信息。 -i ∶插入, i 的后面可以接字串 3. sed命令 a\ 在当前行下面插入文本。 i\ 在当前行上面插入文本。 c\ 把选定的行改为新的文本。 d 删除,删除选择的行。 D 删除模板块的第一行。 s 替换指定字符 h 拷贝模板块的内容到内存中的缓冲区。 H 追加模板块的内容到内存中的缓冲区。 g 获得内存缓冲区的内容,并替代当前模板块中的文本。 G 获得内存缓冲区的内容,并追加到当前模板块文本的后面。 l 列表不能打印字符的清单。 n 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。 N 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 p 打印模板块的行。 P(大写) 打印模板块的第一行。 q 退出Sed。 b lable 分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末尾。 r file 从file中读行。 t label if分支,从最后一行开始,条件一旦满足或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 T label 错误分支,从最后一行开始,一旦发生错误或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 w file 写并追加模板块到file末尾。 W file 写并追加模板块的第一行到file末尾。 ! 表示后面的命令对所有没有被选定的行发生作用。 = 打印当前行号码。 # 把注释扩展到下一个换行符以前。 4. sed替换标记 g 表示行内全面替换。 p 表示打印行。 w 表示把行写入一个文件。 x 表示互换模板块中的文本和缓冲区中的文本。 y 表示把一个字符翻译为另外的字符(但是不用于正则表达式) \1 子串匹配标记 & 已匹配字符串标记 5. sed元字符集 ^ 匹配行开始,如:/^sed/匹配所有以sed开头的行。 $ 匹配行结束,如:/sed$/匹配所有以sed结尾的行。 . 匹配一个非换行符的任意字符,如:/s.d/匹配s后接一个任意字符,最后是d。 * 匹配0个或多个字符,如:/*sed/匹配所有模板是一个或多个空格后紧跟sed的行。 [] 匹配一个指定范围内的字符,如/[ss]ed/匹配sed和Sed。 [^] 匹配一个不在指定范围内的字符,如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一个字母开头,紧跟ed的行。 \(..\) 匹配子串,保存匹配的字符,如s/\(love\)able/\1rs,loveable被替换成lovers。 & 保存搜索字符用来替换其他字符,如s/love/**&**/,love这成**love**。 \< 匹配单词的开始,如:/\<love/匹配包含以love开头的单词的行。 \> 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。 x\{m\} 重复字符x,m次,如:/0\{5\}/匹配包含5个0的行。 x\{m,\} 重复字符x,至少m次,如:/0\{5,\}/匹配至少有5个0的行。 x\{m,n\} 重复字符x,至少m次,不多于n次,如:/0\{5,10\}/匹配5~10个0的行。 6. sed实际用例 #替换test.py中所有的小明变为如花 #此时结果输出到屏幕,不会写入到文件 sed ‘s/小明/如花/‘ /tmp/test.py #使用选项-i,匹配每一行第一个小明替换为如花,并写入文件 sed -i ‘s/小明/如花/‘ /tmp/test.py #使用替换标记g,可以替换所有的匹配 sed -i ‘s/小明/如花/g‘ /tmp/test.py #删除文件第二行 sed -i ‘2d‘ /tmp/test.py #删除文件第二行到第四行 sed -i ‘2,4d‘ /tmp/test.py #删除空白行 sed -i ‘/^$/d‘ /tmp/test.py #删除文件第二行,到末尾所有行 sed ‘2,$d‘ /tmp/test.py #显示10-30行 -p --print -n --取消默认输出 sed -n ‘10,30p‘ /tmp/test.py
Linux scp命令用于Linux之间复制文件和目录。 scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令 1. 注意 第一点: 关闭linux防火墙,linux防火墙用于控制 程序端口的,出入规则, iptables -F 清空防火墙,为了实验方便 iptables -L 查看防火墙规则 永久关闭防火墙,防止下次开机自启 systemctl stop/start/restart firewalld #关闭/开启/重启firewalld服务,此条命令仅限这一次有限 systemctl disable/enable firewalld #永久关闭/开启防火墙 第二点: 关闭系统自带的,美国航空局的selinux getenforce 获取selinux状态 如果是 Enforcing就是开启状态 setenforce 0 临时关闭selinux 2. 语法 scp 【可选参数】 本地源文件 远程文件标记 scp 【可选参数】 远程文件标记 本地源文件 3. 参数 -r :递归复制整个目录 -v:详细方式输出 -q:不显示传输进度条 -C:允许压缩 4.示例 # 传输本地文件到远程地址 scp 本地文件 远程用户名@远程ip:远程文件夹路径/ scp 本地文件 远程用户名@远程ip:远程文件夹路径/远程文件名 scp /tmp/test.py ming@192.168.3.38:/home/ scp /tmp/test.py ming@192.168.3.38:/home/my_test.py # 传输本地目录到远程地址 scp -r 本地文件夹 远程用户名@远程ip:远程文件夹/ scp -r /tmp/hello ming@192.168.3.38:/home/ #复制远程文件到本地 scp ming@192.168.3.38:/home/aa.txt /tmp/ scp -r ming@192.168.3.38:/home/world /home/
Linux du命令用于显示目录或文件的大小。 du会显示指定的目录或文件所占用的磁盘空间。 1. 语法 du [参数] [文件或目录] 2. 参数 -s 显示总计 -h 以k,M,G为单位显示,可读性强 3. 示例 显示目录或文件所占空间 #不写参数,代表显示当前目录所有文件大小 du /etc/ #显示/etc/的总大小 du -sh /etc/
top 命令用于动态地监视进程活动与系统负载等信息
运行top命令之后,如果想退出该命令,键入q即可或按ctrl c
free -m
给文件加锁,只能写入数据,无法删除文件 chattr +a test.py 设置锁 chattr -a test.py 解锁 lsattr test.py 查看锁
1. 查看时间信息 date:可以查看系统时间,查看的是软件时钟 hwclock:硬件主板的时钟信息 在Linux下系统时间和硬件时间不会自动同步,在Linux运行过程中,系统时间和硬件时间以异步的方式运行,互不干扰。 硬件时间的运行,是靠Bios电池来运行,而系统时间是用CPU tick来维持的。 在系统开机时候,会从Bios中获取硬件时间,设置为系统时间 2. 如果时间不正确,或者不精确,可以与时间服务器同步 使用命令 ntpdate 与阿里云的时间服务器同步,更新系统时间 ntpdate -u ntp.aliyun.com //以系统时间为基准,修改硬件时间 hwclock -w //以硬件时间为基准,修改系统时间 hwclock -s
wget命令用于在终端下载网络文件 1. 语法 wget [参数] 下载地址 2. 示例 wget -r -p http://pythonav.cn/av/girl.gif 递归下载所有资源
1. 要传输到windows,得安装一个上传下载工具,工具包的名字是 lrzsz yum install lrzsz -y 2. 安装完之后就有两个命令 rz(receive):接收windows传来的文件 sz(send):发送Linux的文件到windows 3. 示例 rz 直接回车:接收一个文件到linux sz 文件名 : 发送这个文件到windows
重启机器的命令 reboot
关机命令 poweroff
127.0.0.1和0.0.0.0的区别 假设我的电脑ip是192.168.3.16,那么 127.0.0.1 代表本机回环地址 0.0.0.0 代表着127.0.0.1加上192.168.3.16 那么,如果我在本机起了一个服务, 如果我设置的服务ip地址为127.0.0.1,就代表这个服务只有我自己本机才能访问, 如果我设置的服务ip地址为0.0.0.0,就代表这个服务我自己本机可以访问,你使用192.168.3.16也可以访问到。 因此,为什么Xshell可以远程连接到linux服务器 1.因为服务器运行着sshd服务 2.且sshd服务运行在0.0.0.0:22端口 3.我们就可以使用 ssh root@192.168.3.16:22去访问sshd服务,这个服务就是让我们连接到服务器
http://linux.51yip.com/
http://man.linuxde.net/
标签:win $path 快速 ref 管理 birt python解释器 shell 下载工具
原文地址:https://www.cnblogs.com/Zzbj/p/10241935.html