三、常用的Linux命令
1、cd : 更改目录。
2、cd . . :回退到上一个目录,直接cd进入默认目录(cd空格再打两点)。
3、pwd : (print working directory)显示当前所在的目录路径。
4、ls(ll): 都是列出当前目录中的所有文件,只不过ll列出的内容更为详细。ll是ls -l指令的缩写。ls -la可以显示隐藏的文件。
5、mkdir: 新建一个目录,有时候,你想要创建一个新的文件夹或子文件夹。可以使用mkdir+你要创建的文件名来做到这一点。
6、touch : 新建一个文件 如 touch bash.txt 就会在当前目录下新建一个bash.txt 文件。
7、stat:查看文件的详细信息。
8、rm: 删除一个文件,rm bash.txt 就会把bash.txt文件删除。rm -r : 删除一个文件夹,rm -r src 删除src目录,rm -rf / * :切勿在Linux中尝试!它会删除电脑中的全部文件(/表示根目录,*代表所有文件,删库跑路风险大)!
9、mv :移动文件,mv index.html src ,index.html 是我们要移动的文件, src 是目标文件夹,当然,这样写,必须保证文件和目标文件夹在同一目录下,否则等于重命名文件;如要移动文件到别的目录下,就mv 文件名+目标文件夹路径,例如:mv a.txt /root/,就是将a.txt移到root目录下。在相同路径下,可以重命名文件,比如:mv/原来文件的名字/新文件的名字。
10、cp:可以复制文件或目录,cp /源文件 /目标文件 相当改名复制,比如:cp index.html index.js,表示将index.html文件复制到当前目录下,并改名为index.js,此时目录下有两个文件。cp/源文件/目标文件夹,比如:cp 1.jpg src/,表示把1.jpg复制到src文件夹。cp -r :递归拷贝目录(包括复制目录所有的子文件),比如:cp -r src/ src1/表示复制src文件夹并命名为src1。
11、cat:查看文本内容,如果文本编码格式有问题,会出现乱码现象。cat也可以从键盘键入一个文件,比如:cat > 1.txt,表示创建一个txt文件,可以输入文本内容,world,按Ctrl+c结束输入。
12、echo:使用echo命令向文件中写入内容,例如:echo "字符串" > hello.txt,使用>指令覆盖文件原内容并重新输入内容,若文件不存在则创建文件。
13、more:more 指令是一个基于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 要查看的文件。
14、less:用来分屏查看文件内容,它的功能与more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。less 要查看的文件。
15、vi和vim文本编辑器:语法格式:vim/vi 文件名,会自动创建一个文件并进入编辑模式,按“i”键进入输入模式,按“esc”退出输入模式,“q!”强制退出,“q”不保存退出,“wq”保存退出。“:set nu”还可以设置行号。
16、tar:打包指定,最后打包后的文件是 .tar.gz 的文件。tar [选项]+XXX.tar.gz+打包的内容。选项可为-zcvf,压缩指令,-zxvf,解压指令。
17、date:查看系统当前时间。
18、cal:查看日历。
19、reset:重新初始化终端/清屏。
20、clear:清屏。
21、history:查看命令历史。
22、exit:退出。
23、reboot:重启系统。
四、Git基本配置
Git所有的配置文件都保存到本地
--local:项目级,项目目录下
--global:当前用户级,C:\Users\Administrator\ .gitconfig :只适用于当前登录用户的配置
--system:系统级,Git\etc\gitconfig :Git 安装目录下的 gitconfig
1、配置用户名及邮箱(必须要配置的)
(1)配置用户名
git config --global user.name "全村第二帅"
(2)配置邮箱
git config --global user.email xx@qq.com
(3)查看用户名和邮箱
git config user.name git config user.email
2、查看配置信息
(1)查看当前git所有配置信息
#-l是list的缩写 git config -l #不能缩写为--l,因为可能有list和local两种查看方式,--list查看当前git的所有配置信息 git config --list
(2) 查看某个项目的配置信息(或者说当前仓库配置信息)
#查看某个项目的配置信息(可以省略--list) git config --local --list
(3) 查看当前用户(global)配置信息
git config --global --list
(4)查看系统配置信息
git config --system --list
3、本地仓库的搭建
(1)创建一个全新的仓库,在当前目录下新建一个Git代码库
git init
执行之后可以看到在项目下多出了一个.git文件,关于版本等的所有信息都在这个目录里面。注意:这个.git是隐藏的文件夹,需要勾选隐藏的项目才能看见。
# 普通的“ls”命令也是看不见该文件夹的,需要使用“ls -ah”查看隐藏目录 ls -ah
(2) 进入.git目录查看相应的配置
#进入.git目录下 cd .git #查看配置文件 ls -ah
4、查看文件状态
add:将文件添加进缓存区
commit:将文件提交到本地仓库
(1)文件的四种状态
版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过 git add 状态变为Staged.
Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改 !
Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified
(2) 查看文件状态
1)创建两个文件:index.html、login.html
touch index.html touch login.html
2)查看指定文件状态:git status [filename]
git status index.html
3)查看所有文件的状态
git status
可以看见在add之前,文件显示untracked状态,还可以看见先前添加进缓冲区还未提交但被我删除的文件1.html。
4)添加所有文件进缓存区
#添加所有文件到暂存区 git add . #查看文件状态 git status
可以看见有两个文件已经处于待提交的状态了
5)将缓存区的文件提交到本地仓库,git commit -m "消息内容" ,再查看提交状态
git commit -m "new file" git status
注:使用git commit -am可以省略使用git add命令将已跟踪文件放到暂存区的功能
5、忽略文件
有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等,这时候就要在主目录下建立".gitignore"文件,它用来指定 git 需要忽略的文件,且对已经被 git 跟踪的文件是不起作用的。此文件有如下规则:
1、忽略文件中的空行或以井号(#)开始的行将会被忽略。
2、可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等。
3、如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
4、如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
5、如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。
#为注释 *.txt #忽略所有 .txt结尾的文件,这样的话上传就不会被选中! !lib.txt #但lib.txt除外 /temp #仅忽略项目根目录下的TODO文件,不包括其它目录temp build/ #忽略build/目录下的所有文件 doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
忽略文件的配置参考示例:
#字节码文件,日志文件以及 #锁文件(被很多的操作系统和应用程序所使用来锁住某些资源) *.class *.log *.lock #一些包文件以及生成目录target *.jar *.war *.ear target/ # idea的配置文件 .idea/ *.iml/ *velocity.log* ### STS ### .apt_generated .factorypath .springBeans ### IntelliJ IDEA ### *.iml *.ipr *.iws .idea .classpath .project .settings/ bin/ #日志文件及临时文件 *.log tem/ #rebel *rebel.xml*
6、配置SSH公钥
(1)生成一个公钥
ssh-keygen -t rsa
方式一:输入上述命令后,直接回车即可。配置完之后,会在C:\Users\Administrator文件下生成.ssh文件,该文件包括以下两个子文件,然后右键编辑打开id_rsa.pub文件复制公钥即可。
方式二:在ssh-keygen -t rsa生成密钥后,用命令在控制台输出密钥
cat ~/.ssh/id_rsa.pub
(2)将生成的公钥添加进码云(Gitee)的SSH公钥框里,标题会自动生成。
添加完成之后,会显示你当前添加的SSH公钥
(3)Github(有时候上不去,有梯子的挂个梯子)上添加密钥步骤如下:
添加成功后,可以查看到你添加的密钥(Github还会贴心地发个邮件给你)