Bash:通过重命名将多个具有相同名称的文件移动到同一目录中

时间:2015-06-24 19:30:54

标签: bash

我目前在单独的文件夹中有一堆.txt文件,并希望将它们全部移动到同一个文件夹中,但所有文件都具有相同的名称。我想通过添加某种数字来保留所有文件,以便不会覆盖每个文件,例如data[which(data<= 1e-3)] = 1e-3 boxplot(data, log="y") 变为FolderA/file.txtNewFolder/file_1.txt变为FolderB/file.txt等使用bash有没有一种干净的方法呢?在此先感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

您可以执行以下操作(在脚本中或在命令行上):

for i in A B C D E  
do  
  mv Folder$i/file.txt NewFolder/file_$i.txt  
done  

它不会将字母转换为数字,但它以相当简单的方式完成了您所寻找的基础知识。

希望这有帮助。

答案 1 :(得分:0)

按照上一个答案,你可以在bash中添加两行代码来实现你想要的输出:

import tensorflow as tf

(xtrain, ytrain), (xtest, ytest) = tf.keras.datasets.mnist.load_data()

def pre_process(inputs, targets):
    inputs  = tf.expand_dims(inputs, -1)
    targets = tf.one_hot(targets, depth=10)
    return tf.divide(inputs, 255), targets

train_data = tf.data.Dataset.from_tensor_slices((xtrain, ytrain)).\
    take(10_000).shuffle(10_000).batch(8).map(pre_process)
test_data = tf.data.Dataset.from_tensor_slices((xtest, ytest)).\
    take(1_000).shuffle(1_000).batch(8).map(pre_process)

model = tf.keras.Sequential([
                             
            tf.keras.layers.Conv2D(filters=16, kernel_size=(3, 3), strides=(1, 1),
                                   input_shape=(28, 28, 1), activation=ARelu),
            tf.keras.layers.MaxPool2D(pool_size=(2, 2)),

            tf.keras.layers.Conv2D(filters=32, kernel_size=(3, 3), strides=(1, 1), 
                                   activation=ARelu),
            tf.keras.layers.MaxPool2D(pool_size=(2, 2)),

            tf.keras.layers.Flatten(),
            tf.keras.layers.Dense(64, activation=ARelu), 
            tf.keras.layers.Dense(10, activation='softmax', dtype=tf.float32)]) 

opt = tf.keras.optimizers.Adam()

model.compile(loss='categorical_crossentropy', optimizer=opt)
history = model.fit(train_data, validation_data=test_data, epochs=10)

# ------------------

TypeError: Input 'y' of 'Mul' Op has type float32 that does not match type float16 of argument 'x'.