概述
argparse
import argparse
flags=argparse.ArgumentParser()
flags.add_argument('--optimizer', default='Adam',type=str, help=‘Options : Adam')
flags.add_argument('--epoch_size', default=100, type=int, help='Epoch size')
Flag = flags.parse_args()
#Python下
Flag = flags.parse_args(args=[])
#jupyter下
print(Flag.num_splits)
import tensorflow as tf
flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_string('f', '', 'kernel')
#jupyter下
flags.DEFINE_string('optimizer', 'Adam', 'Options : Adam, SGD, RMSProp')
flags.DEFINE_integer('epoch_size', 100, 'Epoch size')
print(FLAGS.optimizer)
linux
#系统变量
sudo vim ~/.bashrc
source ~/.bashrc
sudo vim ~/.bash_profile
source ~/.bash_profile
#环境变量
sudo vim /etc/profile
source /etc/profile
apt-get install package 安装package
apt-get install package --reinstall 重新安装包package
apt-get -f install 修复安装
apt-get update 更新源
apt-get upgrade 更新已安装的包
apt-get dist-upgrade 升级系统
apt-get remove package 删除包
apt-get remove package --purge 删除包,包括配置文件等
apt-get clean && sudo apt-get autoclean 清理无用的包
压缩
一、zip格式
zip -r archive_name.zip filename (-r是压缩文件)
unzip archive_name.zip (解压文件在当前文件下)
unzip archive_name.zip -d new_dir (解压文件可以将文件解压缩至一个你指定的的目录,使用-d参数)
二、tar格式
tar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,它
仅仅只是一个打包工具,并不负责压缩。下面是如何打包一个目录:
tar -cvf archive_name.tar directory_to_compress
-c参数是建立新的存档
-v参数详细显示处理的文件
-f参数指定存档或设备
打包之后如何解包:
tar -xvf archive_name.tar
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用下面的这个命令来解包到指定的路径:
tar -xvf archive_name.tar -C new_dir (解包的参数是-C,不是小写c)
三、tar.gz格式
这种格式是我使用得最多的压缩格式。它在压缩时不会占用太多CPU的,而且可以得到一个非常理想的压缩率。
压缩方式:
tar -zcvf archive_name.tar.gz filename
解压缩方式:
tar -zxvf archive_name.tar.gz
上面这个解包命令将会将文档解包在当前目录下面。当然,你也可以用下面的这个命令来指定解包的路径:
tar -zxvf archive_name.tar.gz -C new_dir
第一种方法,我们只需要杀死之前的进程,释放系统锁就可以了:
ps -ef|grep hello.py
ps -aux|grep hello.py
kill -9 PID
第二种方法,强制解锁
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
进程查看
ps --help
ps aux 是用bsd的格式来显示 java这个进程
显示的项目有:user , pid , %cpu , %mem , vsz , rss , tty , stat , start , time , command
ps -ef 是用标准的格式显示java这个进程
显示的项目有:uid , pid , ppid , c , stime , tty , time , cmd
Git
初始化创建 git 仓库:
git init
touch README.md
git add README.md
git add *
git commit -m "first commit"
git remote add github https://github.com/LebronGG/test.git
git push -u github master
已经有仓库:
git remote add github https://gitee.com/LebronGG/test1.git
git push origin master
仓库更新:
git add README.md
git commit -m "first commit"
git push origin master
工程初始化
git init
git add readme.txt
git commit -m "wrote a readme file"
第一步是用git add
把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit
提交更改,实际上就是把暂存区的所有内容提交到当前分支。
查看状态
git status
可以查看git add 文件到 暂存区的状态
查看git日志
git log
查看分支结构图
git log --graph
查看工作区和版本库的区别
git diff HEAD -- readme.txt
diff优先查看的是暂存区中的内容,如果暂存区为空,则对照版本库内容
版本回退
log单行方便查看
git log --pretty=oneline
git reflog 显示命令日志
git reset --hard 024db57 版本回到到命令版本处
or
git reset --hard ab5f15ef275327456f89d44ce54206669eb9e3f8
checkout回退
git checkout -- readme.txt
一种是readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit
或git add
时的状态。
关联仓库
git remote add origin git@github.com:user/test.git
两种不同的协议连接
git remote add origin https://github.com/user/test.git
查看删除远程库:
git remote -v
git remote rm 。
推送内容
git push -u origin master
git push origin master
由于远程库是空的,我们第一次推送master
分支时,加上了-u
参数,Git不但会把本地的master
分支内容推送的远程新的master
分支,还会把本地的master
分支和远程的master
分支关联起来,在以后的推送或者拉取时就可以简化命令。
创建分支
git branch dev
git checkout dev
or
git checkout -b dev
git checkout
命令加上-b
参数表示创建并切换,相当于上面的两条命令
查看分支
git branch
合并某分支到当前分支
git merge dev
切换分支
git checkout dev
switch更科学
git switch -c dev
删除分支
-d删除 如果分支没有合并的话就用 -D 强行删除
git branch -d dev
内容储存
git stash
Git还提供了一个stash
功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作:
git stash list
工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:一是用恢复,但是恢复后,stash内容并不删除,你需要用git stash drop
来删除;
git stash apply stash@{0}
另一种方式是用git stash pop
,恢复的同时把stash内容也删了:
推送分支
推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样,Git就会把该分支推送到远程库对应的远程分支上:
git push origin master
如果要推送其他分支,比如dev
,就改成:
git push origin dev
抓取分支
git checkout -b dev github/dev
删除远程仓库分支
git push github :bug
强制覆盖
git fetch --all
//从远程拉取最新的代码 不merge
git reset --hard origin/develop
//使用指定分支的代码(此处develop)强制覆盖代码
git pull
//从远程拉取最新的代码 自动merge
注意空格符
git pull 同一分支的多个提交拉取到本地合并
git rebase
把分叉的提交历史“整理”成一条直线
命令git tag <tagname>
用于新建一个标签,默认为HEAD
,也可以指定一个commit id;
命令git tag -a <tagname> -m "blablabla..."
可以指定标签信息;
命令git tag
可以查看所有标签。
命令git push origin <tagname>
可以推送一个本地标签;
命令git push origin --tags
可以推送全部未推送过的本地标签;
命令git tag -d <tagname>
可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>
可以删除一个远程标签。
参考文献:
https://www.liaoxuefeng.com/wiki/896043488029600/1163625339727712
最后
以上就是勤恳小懒猪为你收集整理的argparse & linux & gitGit的全部内容,希望文章能够帮你解决argparse & linux & gitGit所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复