Im Versuch, ein Bash-Datei zu erstellen, die folgende AufgabeBash-Skript und bearbeiten CSV
1- ich einen Dateinamen „ORDER.CSV“ benötigen, um eine Kopie dieser Datei und fügen Sie das Datum genannt haben zu tun/Zeit zum Dateinamen - Das konnte ich erledigen
2- Muss ein bestimmtes Feld in der neuen csv-Datei bearbeiten, die ich oben erstellt habe. Spalte DY und Zeile 2. Das war nicht möglich. Ich muss Datum einfügen Bash-Skript wird in dieser Zeile ausgeführt. Muss in diesem Format sein DDMMYY
3- dann System Upload auf SFTP. Dies glaube ich habe es herausgefunden, wie unten gezeigt.
#!/usr/bin/env bash
Lage Im diesem Schritt erhalten
mit unter Kommando# Copies order.csv and appends file name date/time
#cp /mypath/SFTP/order.csv /mypath/SFTP/orders.`date +"%Y%m%d%H%M%S"`.csv
Brauchen neuen Dateinamen echo helfen zu
echo "new file name "
Benötigen Sie Feld unter Colum DY Row 2. Bedarf bearbeiten helfen aktuelles Datum in dieses Format einfügen MMDDJJJJ
awk -v r=2 -v DY=3 -v val=1001 -F, 'BEGIN{OFS=","}; NR != r; NR == r {$c = val;
print}'
Dies sollte eine Verbindung zu SFTP, die es mit ausgibt, Probleme.
sshpass -p MyPassword sftp -o "Port 232323"
[email protected]
Notwendigkeit, neue Datei zu übergeben, die erstellt und in SFTP-Server abgelegt wurde.
put /incoming/neworder/NEWFILEName.csv
Dank
Was ist Spalte DY? Ist es der Spaltenname (Header)? Was bedeutet "DY = 3"? – karakfa
Entschuldigung das ist der Headername. Vielen Dank – rookievmc