Contents

ARST打卡第136周[136/521]

Algorithm

lc709_转换成小写字母

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
class Solution {
public:
    string toLowerCase(string s) {
        for (int i = 0; i < s.length() ; i++) {
            if (65 <= s[i] && s[i] <= 90) {
                // s[i] = s[i] - 65 + 97;
                s[i] += 32;
                // Leetcode官方解更进一步,找到了位运算规律
                // s[i] |= 32;
            }
        }
        return s;
    }
};

Review

【TED演讲】正念的力量:如何获得真正持久的转变?

正念是有意识的带着善意去关注。 what your practice grows stronger.

Tips

FTP协议(指令集)

Share

ftp支持ipv6

给linux客户端创建ipv6

  • 运行vi /etc/modprobe.d/disable_ipv6.conf(没有这个文件可以pass),将options ipv6 disable=1修改为options ipv6 disable=0 后保存退出。
  • 运行vi /etc/sysconfig/network,将NETWORKING_IPV6=no修改为NETWORKING_IPV6=yes后保存退出。
  • 运行vi /etc/sysctl.conf做如下修改: #net.ipv6.conf.all.disable_ipv6 = 1 #net.ipv6.conf.default.disable_ipv6 = 1 #net.ipv6.conf.lo.disable_ipv6 = 1

net.ipv6.conf.all.disable_ipv6 = 0 net.ipv6.conf.default.disable_ipv6 = 0 net.ipv6.conf.lo.disable_ipv6 = 0 修改完成后,保存并退出。

运行sysctl -p使配置生效

之后ip a可以看到ipv6地址

vsftpd配置ipv6支持

1
2
3
4
5
~ $ vim /etc/vsftpd/vsftpd.conf
~ $ cat /etc/vsftpd/vsftpd.conf | grep listen
## 必须把listen改成no,因为gdb调试查看缺省为yes
listen=no
listen_ipv6=yes

连接

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
from ftplib import FTP

class FtpTest():
    def __init__(self):
        self.ftp_client = FTP()
        ## Vsftpd使用的utf-8,所以用utf-8编码防止中文乱码
        self.ftp_client.encoding = 'utf-8'

if __name__ == '__main__':
    host_ip = '13.232.23.1xx'
    host_ip = 'fdfx:9xxx:c5xd:0:42:acf:fxxx:1xx5'
    host_ip6 = 'fdxe:9xx2:c5xd:0:42:af2:fexx:1xx5'
    username = 'root'
    password = 'root'
    ## 实例化
    ftp_test = FtpTest()
    ## 如果登录成功则执行命令,然后退出
    if ftp_test.login_ftp(host_ip, username, password) == True:
        LOG.info('login success , now will execute some command')
        ftp_test.execute_some_command()
        ftp_test.ftp_logout()