У меня более 10000 таких файлов, и я пытаюсь сделать их как шаблон
мои строки похожи на это
"MLKT_3C_AAAU_01A"
"MLKT_3C_AALI_01A"
"MLKT_3C_AALJ_01A"
"MLKT_3C_AALK_01A"
"MLKT_4H_AAAK_01A"
Я пытаюсь преобразовать их в этот
names(MLKT_3C_AAAU_01A)[2] <- '3C_AAAU_01A' df<- full_join(df,MLKT_CS_4942_01A, by = 'V1')
names(MLKT_3C_AALI_01A)[2] <- '3C_AALI_01A' df<- full_join(df,MLKT_3C_AALI_01A, by = 'V1')
names(MLKT_3C_AALJ_01A)[2] <- '3C_AALJ_01A' df<- full_join(df,MLKT_3C_AALJ_01A, by = 'V1')
names(MLKT_3C_AALK_01A)[2] <- '3C_AALK_01A' df<- full_join(df,MLKT_3C_AALK_01A, by = 'V1')
names(MLKT_4H_AAAK_01A)[2] <- '4H_AAAK_01A' df<- full_join(df,MLKT_4H_AAAK_01A, by = 'V1')
Лучший способ, с которым я сталкивался до сих пор, - это использовать текстовый редактор и создавать их один за другим.Мне интересно, есть ли способ в bash получить приведенные выше строки и преобразовать их в приведенный мною пример?
Перед тем как начать, я удаляю цитату из каждой строки
sed 's/\"//g' example.txt > exampleout.txt
ATсначала я пытаюсь добавить names(
в начале каждой строки.так что давайте представим, что мой файл, содержащий все эти строки в строке, называется exampleout.txtкоторый дает мне три имени времени (вместо одного раза
awk '$0="names("$0' exampleout.txt > myout.txt
Затем я пытаюсь вставить )[2] <- '' df<- full_join(df,, by = 'V1')
в конце каждой строки, используя следующие
sed -e 's/$/)[2] <- '' df<- full_join(df,, by = 'V1') /' myout.txt > myout2.txt
, так что это привело меня к этому
names(MLKT_3C_AAAU_01A )[2] <- df<- full_join(df,, by = V1)
names(MLKT_3C_AALI_01A)[2] <- df<- full_join(df,, by = V1)
names(MLKT_3C_AALJ_01A )[2] <- df<- full_join(df,, by = V1)
names(MLKT_3C_AALK_01A)[2] <- df<- full_join(df,, by = V1)
names(MLKT_4H_AAAK_01A)[2] <- df<- full_join(df,, by = V1)