周报

439 阅读3分钟

TODO List:

  • windows下安装WSL2
  • 自己安装系统Ubuntu18.04(用虚拟机VirtualBox)
  • 会安装gcc和编译gcc-7.0源码
  • 自己下载pytorch软件源码,自己编译一个cpu版本
  • 用shell脚本写一个程序:随机创建100个文件,里面随机产生255行字符串(字符串数量=行数),然后把里面的所有出现的 acd 字符串 改成qian

日期:2021年2月2日

工作进度:

  • windows下安装WSL2
  • 用shell脚本写一个程序:随机创建100个文件,里面随机产生255行字符串(字符串数量=行数),然后把里面的所有出现的 acd 字符串 改成qian

    # 随机创建 100个文件
    echo "开始创建文件"
    for i in {1..100}
        do
            filename="Text${i}.txt"
            str=""
    		for i in {1..255}
        	do
              second_str=""
              # 生成字符串数量=行数
              second_str=`sudo cat /dev/urandom | tr -dc A-Za-z0-9 | head -c ${i}`
        	done
    		echo ${str}
            echo ${str} > ${filename}
            sed -i 's/abc/xxx/g' filename
        done

python
# -*- coding =utf-8 -*-
# @Time :1:16
# @Author :Elvis_LEE
# @File :Test.py
# @Software:PyCharm
import os

folder_name = "C:/Users/Wai/Desktop/Test"


def main():
    file_names = os.listdir(folder_name)
    open_file(folder_name, file_names)


def open_file(path, file_names):
    for name in file_names:
        file_name = os.path.join(path, name)
        print("Path:" + path, "file_name:" + file_name, "name:" + name)
        with open(file_name, 'r') as fp:
            contents = fp.read()
            rep = contents.replace("acd", "qian")
        with open(file_name, 'w') as fp2:
            fp2.write(rep)


if __name__ == '__main__':
    main()

要点:
变量
# 定义变量
your_name="Wai"
# 使用变量①
echo $your_name
# 使用变量②
echo ${your_name}
循环
: << !
for 变量 in 串行
do
   执行命令
done
!
for i in {1..10}
do
        echo "i is ${i}"
done

显示换行

echo -e "OK! \n" # -e 开启转义

将命令结果赋值给变量
# 变量=`命令`
second_str=`sudo cat /dev/urandom | tr -dc A-Za-z0-9 | head -c ${i}
函数
  • 函数传递参数:函数名 参数
  • $? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。
  • 函数return Shell 函数的返回值只能是一个介于 0~255 之间的整数,其中只有 0 表示成功,其它值都表示失败。

如何得到函数的处理结果?

  • 既然 return 表示退出状态,那么该如何得到函数的处理结果呢?比如,我定义了一个函数,计算从 m 加到 n 的和,最终得到的结果该如何返回呢?
这个问题有两种解决方案:
  • 一种是借助全局变量,将得到的结果赋值给全局变量;

  • 一种是在函数内部使用 echo、printf 命令将结果输出,在函数外部使用$()或者``捕获结果。


日期:2021年2月3日

工作进度:

1.会安装gcc和编译gcc-7.0源码
windows
  • “GCC是一个用于linux系统下编程的编译器 是一个用于编程开发的自由编译器。最初,GCC只是一个C语言编译器,它是GNU C Compiler 的英文缩写。随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含众多语言的编译器了。其中包括 C,C++,Ada,Object C和Java等。所以,GCC也由原来的GNU C Compiler变为GNU Compiler Collection。也就是 GNU编译器家族的意思。当然,如今的GCC借助于它的特性,具有了交叉编译器的功能,即在一个平台下编译另一个平台的代码。

(一).安装

1.为了在 Windows 上安装 GCC,sourceforge.net/projects/mi… Download mingw-get-setup.exe (86.5 kB)

2.运行 Download mingw-get-setup.exe ,点击"运行",continue等,注意记住安装的目录,如 D:\MinGw,下面修改环境变量时还会用到。(需要挂梯子)

3.修改环境变量: 选择计算机—属性---高级系统设置---环境变量,在系统变量中找到 Path 变量,在后面加入 min-gw的安装目录,如 D:\MinGw\bin

4.在开始菜单中,点击"运行",输入 cmd,打开命令行:输入 mingw-get,如果弹出 MinGw installation manager 窗口,说明安装正常。此时,关闭 MinGw installation manager 窗口,否则接下来的步骤会报错

5.在cmd中输入命令 mingw-get install gcc,等待一会,gcc 就安装成功了。

如果想安装 g++,gdb,只要输入命令 mingw-get install g++ 和 mingw-get install gdb 。 (二)使用

在桌面创建一个hello.c的程序

hello.c 在 cmd 中输入命令 gcc C:\Users\Wai\Desktop\C\hello.c

image.png 在当前目录下(记住是命令的当前目录)会生成 a.exe 的可执行文件,在 cmd 中输入 a.exe 就可以执行程序了。

参考:www.jianshu.com/p/dc0fc5d8c…


Ubuntu

①安装gccyum -y install gcc

②根据网址的步骤编译7.0版本

参考:blog.csdn.net/RBPicsdn/ar…


日期:2021年2月4日

工作进度:

1.安装docker
  • 首先更新资源update。

sudo apt-get update

  • 安装docker。

sudo apt-get install docker

  • 安装docker.io。

sudo apt-get install docker.io

  • 安装docker-registry。

sudo apt-get install docker-registry

  • 启动并进入docker
sudo systemctl start docker
sudo systemctl enable docker
  • 查看是否安装成功
$ docker -v
Docker version 19.03.6, build 369ce74a3c
2.安装docker composer
(1)下载docker-compose
$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
(2)授权
$ sudo chmod +x /usr/local/bin/docker-compose

(3)查看版本信息
$ docker-compose --version
3.更改Docker的镜像仓库地址
  • 找到daemon配置文件,找不到就创建一个 sudo mkdir -p /etc/docker
  • 向daemon配置文件插入加速器地址
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://5cs1uaxp.mirror.swr.myhuaweicloud.com"]
}
EOF
  • 加载配置文件

sudo systemctl daemon-reload

  • 重启docker服务

sudo systemctl restart docker

3.部署Kafka
  • 拉取镜像
# 拉取zookeeper
docker pull wurstmeister/zookeeper
# 拉取kafka
docker pull wurstmeister/kafka
  • 查看是否拉取成功
docker images

root@iZwz9bcdfzd651pv8pm273Z:~# docker images
REPOSITORY               TAG                 IMAGE ID            CREATED             SIZE
wurstmeister/kafka       latest              cc59b78d943f        4 weeks ago         438MB
wurstmeister/zookeeper   latest              3f43f72cb283        2 years ago         510MB
  • 定义docker-compose.yml
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka
    depends_on: [ zookeeper ]
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 192.168.220.150
      KAFKA_CREATE_TOPICS: "test:1:1"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /data/product/zj_bigdata/data/kafka/docker.sock:/var/run/docker.sock
  • 在docker-compose.yml文件目录进行服务打包
[root@VM_0_16_centos kafka] # docker-compose build
zookeeper uses an image, skipping
kafka uses an image, skipping
  • 三.启动服务
Starting kafka_kafka_1     ... done
Starting kafka_zookeeper_1 ... done

参考链接:www.jianshu.com/p/0edcc3add…


安装pytorch

一、安装Anaconda

  • 下载 wget https://repo.anaconda.com/archive/Anaconda3-2020.07-Linux-x86_64.sh
  • 安装 bash Anaconda3-2020.07-Linux-x86_64.sh -p PATH -u