linux--初见
来源:互联网 发布:爬虫软件有哪些 编辑:程序博客网 时间:2024/05/01 02:04
Shell Prompt命令提示符: craftsman@dog:~$ + command(命令)
explain:craftsman:username,用户名
dog:machinename,机器名
~$:current working directory,当前工作目录.
~ :user home,即用户主目录. --> /home/craftsman
Command命令:rm -r ttt/
rm:命令本身.
-r:参数.
ttt/:操作对象.
ge: man rm: 通过man命令打开一个命令手册.
之后查看某个具体参数的使用敲击:begin with"/-" ,因为参数都是以-开头的.
查找下一处敲击键盘n,
eg: /-r
2.在ubuntu文件中跳转:
windows有分区.
ubuntu只有一棵倒挂的树.
Root Directory:根目录.
current working directory,当前工作目录.可以使用pwd在ubuntu的terminal中打印出来.
/home/craftsman
3.绝对路径(absolute path):start with "/" .eg:Devices下面的Computer,下面的bin文件件的绝对路径就是:/bin
.eg:Devices下面的Computer,下面的home文件下下的craftsman文件夹的绝对路径就是:/home/craftsman
相对路径:start with "." or ".." ...
相对于当前工作目录产生的路径.
. 表示当前工作目录:current working dir
..表示当前工作目录的上一级目录 :parent dir(directory) of current working dir
4.cd 命令:Change (working) Directory
改变当前工作目录.
有两种方式: cd 绝对路径,cd 相对路径
cd - :回到上一次的目录的用户目录.(这样可以来回切换)
terminal:ctrl+l:清屏.
直接敲:cd 会回到用户主目录:/home/craftsman (in my VMware)
5.走马观花看命令:
copy: $ cp file1 file2(copy file)
$ cp -r dir1 dir2(copy directory, need parameter:-r)
move: $ mv file .. (把文件移动到上一级目录)
$ mv file dir/ (把文件移动到当前目录的dir目录中)
rename: $ mv file1 file2
$ dir1 dir2 # dir2存在,则为移动操作
remove: $ rm file (文件)
$ rm -r dir (目录)
create a file: $ touch a.txt (将会创建在当前目录下)
$ >a.txt
$ touch .jj.xml (在当前目录下创建隐藏文件)
create a directory: $ mkdir dir
$ mkdir .mydir(在当前目录下创建隐藏目录)
在当前目录下list隐藏文件(夹):$ ls -a
查看文件: $ cat file
查看文件类型: $ file a.txt
6.通配符:
7.打包压缩:
8.重定向.
8.1 三个重要文件
note:in linux,everything is a file...所有的东西都是文件.
linux下面有三个文件很特殊,这三个文件是一直打开的.系统就给这三个文件
分配了固定的描述符(file descriptor).
file descriptor:为0的文件叫做标准输入文件, stdin
file descriptor:为1的文件叫做标准输出文件, stdout
file descriptor:为1的文件叫做标准错误文件, stderr
8.2 拐弯的各种方式
输出重定向(redirect stdout),输出重定向符: >
标准错误输出(redirect stderr):2>
标准输入(redirect stdin):<
8.3 管道线
9.权限.
9.1 三种权限
reading -- r 读
writing -- w 写
executing- x 执行
the owner, group, world has which permission of r,w,x
9.2 文件模式,file mode
文件:
$ ls -l a.xml (可以查看文件权限信息)
:-rw-rw-r-- 1 craftsman craftsman 6 3月 20 20:15 a.xml
-:file type: - file(-就是文件), l sym link(符号链接), d directory(目录),.....
1:link number
the first craftsman:owner
the second craftsman:group
6:size in byte, means the size of the file.
3月 20 20:15:the last modify time.
rw-rw-r--:file mode(对文件的权限情况)
the first rw-:owner(文件拥有者对该文件用于r,w权限,后面是-,表示没有执行(executing)的权限)
the second rw-:group
r--:world(只有r的权限)
目录:
$ ls -ld myFolder(可以查看目录权限信息)
:drwxrwxr-x 2 craftsman craftsman 4096 3月 20 14:11 myFolder
9.3 chmod(change file mode,改变文件模式)
改变一个普通文件的加执行权限是毫无意义的
所以打开vim编辑器.创建一个脚本程序文件: $ vim a.sh
编辑:echo hello
然后esc 退出编辑
然后大写ZZ
这样得到一个合法的程序,a.sh
执行 $ ./a.sh
提示信息:bash: ./a.sh: Permission denied
执行命令:$ ls -l a.sh 查看得到:-rw-rw-r-- 1 craftsman craftsman 11 3月 20 21:18 a.sh
得知我这个owner是没有执行(executing)权限的(the first rw-).
获取对该脚本程序执行权限:$ chmod +x a.sh
然后:$ ls -l a.sh
发现:-rwxrwxr-x 1 craftsman craftsman 11 3月 20 21:18 a.sh
我这个owner有了执行权限(the first rwx).so now i got the permission to execute the a.sh
现在再来执行:$ ./a.sh
成功打印 hello.
now:有一个文件:
新建一个文件:touch a.txt
向文件中写内容: echo helloworld > a.txt
then: $ ls -l a.txt
info: -rw-rw-r-- 1 craftsman craftsman 11 3月 20 21:40 a.txt
这时:操作的既不是craftsman本人,也不是craftsman这个小组中的组员,
我想给他加上写权限. 即 将r--变成 rw-
$ chmod -rw-rw-rw- a.txt 不是合法的命令.
$ chmod -110110110 a.txt 也不是合法的
$ chmod 666 a.txt 这是合法的... 在terminal输入该合法命令
输入命令之后
查看该本文权限信息 命令:$ ls -l a.txt
info:-rw-rw-rw- 1 craftsman craftsman 11 3月 20 21:40 a.txt
成功!!!
我们对文件的owner和group做修改来改变某个用户对该文件权限信息:chown命令可以实现.
10.进程
10.1.获取进程号. 进程号:PID(Process ID).
$ man ps 查看ps命令信息.
ps - report a snapshot of the current processes.
查看当前系统所有进行运行情况:$ ps aux
$ ps aux|less
$ ps aux|grep vim 直接查看vim进程信息
info:craftsm+ 29380 0.0 1.8 256672 18696 pts/9 Sl+ 22:02 0:00 vim
craftsm+ 29435 0.0 0.2 15944 2436 pts/0 S+ 22:09 0:00 grep --color=auto vim
kill vim进程:$ kill 29380(进程号,上面两个的第一个进程会被杀死).
10.2.后台执行. ????
10.3.kill命令结束进程. ?
11.查找
11.1.locate:在系统范围内定位文件. eg: $ locate vimrc(系统所有文件名包含vimrc的文件)
但是我们可能会找不到我们刚刚新建的文件.
why? file system-->updatedb(每天更新一次)-->databases-->locate-->results
解决办法:$ sudo updatedb 更新
然后再来:$ locate a.sh (在更新之前新建的一个a.sh) 就可以找到了.
11.2.find:在一个目录范围内定位文件.
定位到桌面目录下,$ find .命令会列出该目录下的所有文件:craftsman@dog:~/Desktop$ find .
找到当前目录下的java文件:$ find .|grep .java (|是管道符, grep .java 筛选java文件)
只看查找出来的文件:$ find . -type f
只看查找出来的目录:$ find . -type d
11.3.grep:字符串查找利器.
12网络操作. pass i have no server...
12.1.远程操作
12.2.数据传输
13.脚本编程.
指定解析器
语句即命令
位置参数
脚本不在当前shell执行
循环控制
远程执行
确认执行
其他语言写脚本
explain:craftsman:username,用户名
dog:machinename,机器名
~$:current working directory,当前工作目录.
~ :user home,即用户主目录. --> /home/craftsman
Command命令:rm -r ttt/
rm:命令本身.
-r:参数.
ttt/:操作对象.
ge: man rm: 通过man命令打开一个命令手册.
之后查看某个具体参数的使用敲击:begin with"/-" ,因为参数都是以-开头的.
查找下一处敲击键盘n,
eg: /-r
2.在ubuntu文件中跳转:
windows有分区.
ubuntu只有一棵倒挂的树.
Root Directory:根目录.
current working directory,当前工作目录.可以使用pwd在ubuntu的terminal中打印出来.
/home/craftsman
3.绝对路径(absolute path):start with "/" .eg:Devices下面的Computer,下面的bin文件件的绝对路径就是:/bin
.eg:Devices下面的Computer,下面的home文件下下的craftsman文件夹的绝对路径就是:/home/craftsman
相对路径:start with "." or ".." ...
相对于当前工作目录产生的路径.
. 表示当前工作目录:current working dir
..表示当前工作目录的上一级目录 :parent dir(directory) of current working dir
4.cd 命令:Change (working) Directory
改变当前工作目录.
有两种方式: cd 绝对路径,cd 相对路径
cd - :回到上一次的目录的用户目录.(这样可以来回切换)
terminal:ctrl+l:清屏.
直接敲:cd 会回到用户主目录:/home/craftsman (in my VMware)
5.走马观花看命令:
copy: $ cp file1 file2(copy file)
$ cp -r dir1 dir2(copy directory, need parameter:-r)
move: $ mv file .. (把文件移动到上一级目录)
$ mv file dir/ (把文件移动到当前目录的dir目录中)
rename: $ mv file1 file2
$ dir1 dir2 # dir2存在,则为移动操作
remove: $ rm file (文件)
$ rm -r dir (目录)
create a file: $ touch a.txt (将会创建在当前目录下)
$ >a.txt
$ touch .jj.xml (在当前目录下创建隐藏文件)
create a directory: $ mkdir dir
$ mkdir .mydir(在当前目录下创建隐藏目录)
在当前目录下list隐藏文件(夹):$ ls -a
查看文件: $ cat file
查看文件类型: $ file a.txt
6.通配符:
7.打包压缩:
8.重定向.
8.1 三个重要文件
note:in linux,everything is a file...所有的东西都是文件.
linux下面有三个文件很特殊,这三个文件是一直打开的.系统就给这三个文件
分配了固定的描述符(file descriptor).
file descriptor:为0的文件叫做标准输入文件, stdin
file descriptor:为1的文件叫做标准输出文件, stdout
file descriptor:为1的文件叫做标准错误文件, stderr
8.2 拐弯的各种方式
输出重定向(redirect stdout),输出重定向符: >
标准错误输出(redirect stderr):2>
标准输入(redirect stdin):<
8.3 管道线
9.权限.
9.1 三种权限
reading -- r 读
writing -- w 写
executing- x 执行
the owner, group, world has which permission of r,w,x
9.2 文件模式,file mode
文件:
$ ls -l a.xml (可以查看文件权限信息)
:-rw-rw-r-- 1 craftsman craftsman 6 3月 20 20:15 a.xml
-:file type: - file(-就是文件), l sym link(符号链接), d directory(目录),.....
1:link number
the first craftsman:owner
the second craftsman:group
6:size in byte, means the size of the file.
3月 20 20:15:the last modify time.
rw-rw-r--:file mode(对文件的权限情况)
the first rw-:owner(文件拥有者对该文件用于r,w权限,后面是-,表示没有执行(executing)的权限)
the second rw-:group
r--:world(只有r的权限)
目录:
$ ls -ld myFolder(可以查看目录权限信息)
:drwxrwxr-x 2 craftsman craftsman 4096 3月 20 14:11 myFolder
9.3 chmod(change file mode,改变文件模式)
改变一个普通文件的加执行权限是毫无意义的
所以打开vim编辑器.创建一个脚本程序文件: $ vim a.sh
编辑:echo hello
然后esc 退出编辑
然后大写ZZ
这样得到一个合法的程序,a.sh
执行 $ ./a.sh
提示信息:bash: ./a.sh: Permission denied
执行命令:$ ls -l a.sh 查看得到:-rw-rw-r-- 1 craftsman craftsman 11 3月 20 21:18 a.sh
得知我这个owner是没有执行(executing)权限的(the first rw-).
获取对该脚本程序执行权限:$ chmod +x a.sh
然后:$ ls -l a.sh
发现:-rwxrwxr-x 1 craftsman craftsman 11 3月 20 21:18 a.sh
我这个owner有了执行权限(the first rwx).so now i got the permission to execute the a.sh
现在再来执行:$ ./a.sh
成功打印 hello.
now:有一个文件:
新建一个文件:touch a.txt
向文件中写内容: echo helloworld > a.txt
then: $ ls -l a.txt
info: -rw-rw-r-- 1 craftsman craftsman 11 3月 20 21:40 a.txt
这时:操作的既不是craftsman本人,也不是craftsman这个小组中的组员,
我想给他加上写权限. 即 将r--变成 rw-
$ chmod -rw-rw-rw- a.txt 不是合法的命令.
$ chmod -110110110 a.txt 也不是合法的
$ chmod 666 a.txt 这是合法的... 在terminal输入该合法命令
输入命令之后
查看该本文权限信息 命令:$ ls -l a.txt
info:-rw-rw-rw- 1 craftsman craftsman 11 3月 20 21:40 a.txt
成功!!!
我们对文件的owner和group做修改来改变某个用户对该文件权限信息:chown命令可以实现.
10.进程
10.1.获取进程号. 进程号:PID(Process ID).
$ man ps 查看ps命令信息.
ps - report a snapshot of the current processes.
查看当前系统所有进行运行情况:$ ps aux
$ ps aux|less
$ ps aux|grep vim 直接查看vim进程信息
info:craftsm+ 29380 0.0 1.8 256672 18696 pts/9 Sl+ 22:02 0:00 vim
craftsm+ 29435 0.0 0.2 15944 2436 pts/0 S+ 22:09 0:00 grep --color=auto vim
kill vim进程:$ kill 29380(进程号,上面两个的第一个进程会被杀死).
10.2.后台执行. ????
10.3.kill命令结束进程. ?
11.查找
11.1.locate:在系统范围内定位文件. eg: $ locate vimrc(系统所有文件名包含vimrc的文件)
但是我们可能会找不到我们刚刚新建的文件.
why? file system-->updatedb(每天更新一次)-->databases-->locate-->results
解决办法:$ sudo updatedb 更新
然后再来:$ locate a.sh (在更新之前新建的一个a.sh) 就可以找到了.
11.2.find:在一个目录范围内定位文件.
定位到桌面目录下,$ find .命令会列出该目录下的所有文件:craftsman@dog:~/Desktop$ find .
找到当前目录下的java文件:$ find .|grep .java (|是管道符, grep .java 筛选java文件)
只看查找出来的文件:$ find . -type f
只看查找出来的目录:$ find . -type d
11.3.grep:字符串查找利器.
12网络操作. pass i have no server...
12.1.远程操作
12.2.数据传输
13.脚本编程.
指定解析器
语句即命令
位置参数
脚本不在当前shell执行
循环控制
远程执行
确认执行
其他语言写脚本
0 0
- linux--初见
- Linux 之Awk 初见
- linux字符驱动之初见
- linux字符驱动之初见
- linux字符驱动之初见
- linux字符驱动之初见
- linux字符驱动之初见
- 初见
- 初见
- 初见
- 初见
- 初见
- 我国Linux产业链初见成熟 专家呼吁加强应用
- Linux IO性能测试工具: FIO之初见
- 初见 Catalyst
- Hadoop初见
- 初见端倪
- 初见面
- 抽象类与接口
- qt5.5程序打包发布以及依赖
- java int与integer的区别
- Mac安装ReactNative
- Toolbar修改高度后返回按钮不能居中的解决方法
- linux--初见
- c语言实现des加密
- gets和scanf函数初篇
- 189. Rotate Array
- LeetCode: Palindrome Pairs
- Qt程序打包成exe可执行文件图文教程
- Spring配置文件写法
- 共同学习Java源码--concurrent包黑科技--Executor和ExecutorService
- 电话面试2 20160325_1733_27min