#44 通过 Windows 命令行(CMD)创建文件

2013-12-24

一、建立空文件的几种方法

  1. cd . > a.txt

cd.表示改变当前目录为当前目录,即等于没改变;而且此命令不会有输出。

表示把命令输出写入到文件。后面跟着a.txt,就表示写入到a.txt。
而此例中命令不会有输出,所以就创建了没有内容的空文件。

  1. copy nul a.txt

nul表示空设备,从概念上讲,它不可见,存在于每个目录中,可以把它看成一个特殊的 “文件”,它没有内容;一般可把输出写入到nul,来达到屏蔽输出的目的,如pause>nul,此命令执行效果是暂停,并且不会显示“请按任意键继续. . .”。
此例子表示将空设备复制到a.txt,同样创建了没有内容的空文件。

  1. type nul > a.txt

此例子表示显示空设备的内容,并写入到a.txt。

  1. echo a 2> a.txt

“2” 表示错误输出的句柄,此例中没有错误输出,所以创建了没有内容的空文件。
其实>默认都是重定向了句柄1,即标准输出句柄。比如 cd . > a.txt,其实就是 cd . 1> a.txt
同样,句柄 3 到 9 也可以使用在本例中,它们是未经定义的句柄,也不会有输出,如 echo a 3> a.txt

  1. fsutil file createnew d:\a.txt 0

使用 fsutil 创建了一个空文件。

  1. 其他命令

只要没有输出,并重定向到文件就可以了

二、建立非空文件的几种方法

  1. echo a>a.txt

最常用的是 echo 命令,此例子表示把字母a和回车换行覆盖输出到 a.txt(如果 a.txt 原来已有内容则覆盖掉原来的内容),如果追加内容,可以使用>>,如 echo b >> a.txt,表示把 b 和回车换行追加到文件末尾。

  1. 其他命令的重定向输出,如
type a.txt > b.txt
copy a.txt b.txt
fsutil file createnew d:\a.txt 1

#43 Python 命名元组

2013-12-23

collections.namedtuple 是一个工厂方法,用来创建一个 tuple 子类。

# python2
collections.namedtuple(typename, field_names[, verbose=False][, rename=False])
# verbose = True 对于 Python 初学者来说非常好,创建类型时,会输出类的完整定义,用来学习 Python 类的一些特性。
# 这个参数在 python3.7 版被移除

# python3
collections.namedtuple(typename, field_names, *, rename=False, defaults=None, module=None)
from collections import namedtuple

DBConn = namedtuple('MySQL', ('host', 'port', 'username', 'password', 'db'))
conn = DBConn('localhost', '3306', 'root', '123456', 'test')

conn
# MySQL(host='localhost', port='3306', username='root', password='123456', db='test')

conn._asdict()  # python2 输出 OrderedDict 类型
# {'host': 'localhost',
#  'port': '3306',
#  'username': 'root',
#  'password': '123456',
#  'db': 'test'}

conn.__class__
# __main__.MySQL

conn.host
# 'localhost'

#41 新作息时间表

2013-12-16

新制定一张作息时间表,规范一下自己的作息安排,不论寒暑,不分休息日和工作日。