Αντιγραφή αρχείων από το τερματικό

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Reinach » 11 Νοέμ 2014, 16:25

Γεια χαρά. Έχω έναν υποφάκελο στον προσωπικό μου φάκελο, στον οποίο υπάρχουν πολλά αρχεία pdf. Ας ονομάσουμε αυτόν τον υποφάκελο "Αρχεία pdf". Μέσα σε αυτόν τον υποφάκελο έχω δημιουργήσει τους υποφακέλους Α και Β στους οποίους θα αντιγράψω τα αρχεία του φακέλου "Αρχεία pdf" και θα τα κατανείμω σε αυτούς (ή στον έναν ή στον άλλο) σύμφωνα με κάποιες παραμέτρους που έχουν στο filename τους.

Ο φάκελος "Αρχεία pdf" βρίσκεται αρκετά χαμηλά στη ριζική δομή, επιπλέον όλα τα ονόματα φακέλων και υποφακέλων είναι στα ελληνικά και θα είναι μπέρδεμα να δώσω το πλήρες path στην εντολή cp για πηγή/προορισμό. Ας πούμε ότι έχω ανοίξει το τερματικό στον κατάλογο "Αρχεία pdf", στον οποίο εκτός από το πλήθος των αρχείων αυτών υπάρχουν και οι υποφάκελοι Α και Β που δημιούργησα για να τα αντιγράψω. Ποιος είναι ο πιο σύντομος τρόπος για να διατυπώσω την εντολή cp για αυτή την εργασία;

Αναφέρομαι στο path προορισμού (γιατί για την πηγή φαντάζομαι δεν χρειάζεται). Αντί π.χ. να γράψω αυτό:
Κώδικας: Επιλογή όλων
cp *3*.pdf ~/Τα Έγγραφά μου/μπλα/μπλα/μπλα/..../μπλα/Αρχεία pdf/Α


γίνεται να διατυπώσω το path του προορισμού πιο σύντομα, δεδομένου ότι βρίσκομαι ήδη με ανοιγμένο το τερματικό στον μητρικό κατάλογο του φακελου Α (και του Β);
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 24.04 Noble Numbat 6.8.0-62-generic 64bit (el_GR.UTF-8, ubuntu:GNOME ubuntu)
3 Intel Core i5-1035G1 CPU @ 1.00GHz ‖ RAM 19549 MiB ‖ LENOVO LNVNB161216 - LENOVO 81WE
4 Intel Iris Plus Graphics G1 (Ice Lake) [8086:8a56] {i915}
5 wlp0s20f3: Intel Ice Lake-LP PCH CNVi WiFi [8086:34f0] (rev 30)
Άβαταρ μέλους
Reinach
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 702
Εγγραφή: 09 Νοέμ 2008, 20:48
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Learner » 11 Νοέμ 2014, 16:29

Αν κατάλαβα σωστά
Κώδικας: Επιλογή όλων

cp *.pdf A/
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Reinach » 11 Νοέμ 2014, 17:01

Ωπ ωραίος. Κατάλαβα τη λογική. Βέβαια εγω ξεχωρίζω τα αρχεία που θα αντιγραφούν στον φάκελο Α γιατί τα συγκεκριμένα έχουν κάπου ανάμεσα στο όνομά τους το "_4_" άρα η εντολή θα διαμορφωνόταν ως εξής:
Κώδικας: Επιλογή όλων
cp *_4_*.pdf A/

Το θέμα είναι όμως ότι κάτι με εμποδίζει στο τερματικό να το γράψω αυτό ολόκληρο. Έχω ανοίξει τερματικό στον κατάλογο που με ενδιαφέρει αλλά ο κέρσορας εμφανίζεται όχι αμέσως μετά το prompt αλλά περίπου 2 TABs πιο δεξιά και επιτρέπει να εισάγω 8-10 ή κάπου εκεί χαρακτήρες. Αν γράψω κι άλλους σβήνονται κάποιοι από τους πριν και χαλάει η εντολή. Ακόμη και όταν την εντολή την κάνω αντιγραφή-επικόλληση όπως είναι εδώ από πάνω, εμφανίζεται έτσι:
Κώδικας: Επιλογή όλων
c_*.pdf A/

δηλαδή "τρώει" κάποιους χαρακτήρες, την διαβάζει συνεπώς λάθος και δίνει ως απάντηση φυσικά "δεν υπάρχει τέτοια εντολή". Βλέπω ότι αυτό δεν το κάνει όταν ανοίξω το τερματικό στο $HOME/ και γράψω εκεί την εντολή. Περίεργο δεν είναι; Να το ενοχλεί κάτι στο path με τα ελληνικά; Δεν το έχω ξανασυναντήσει αν και χρησιμοποιώ αρκετά το τερματικό.
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 24.04 Noble Numbat 6.8.0-62-generic 64bit (el_GR.UTF-8, ubuntu:GNOME ubuntu)
3 Intel Core i5-1035G1 CPU @ 1.00GHz ‖ RAM 19549 MiB ‖ LENOVO LNVNB161216 - LENOVO 81WE
4 Intel Iris Plus Graphics G1 (Ice Lake) [8086:8a56] {i915}
5 wlp0s20f3: Intel Ice Lake-LP PCH CNVi WiFi [8086:34f0] (rev 30)
Άβαταρ μέλους
Reinach
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 702
Εγγραφή: 09 Νοέμ 2008, 20:48
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Learner » 11 Νοέμ 2014, 18:35

Ούτε εγώ το έχω συναντήσει ξανά αυτό που λες. Μήπως είναι κάποια ρύθμιση του τερματικού που χρησιμοποιείς; έχεις αλλάξει κάτι ;
Μήπως έχεις πειράξει κάτι στο .bashrc που δημιουργεί αυτή την περίεργη συμπεριφορά ;
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό lucinos » 11 Νοέμ 2014, 18:52

ο φάκελος λέγεται "Αρχεία pdf"; δηλαδή έχει μέσα κενό; Ο απλός τρόπος είναι να αποφεύγεις τα κενά στα ονόματα αρχείων και φακέλων (άλλαξε τα κενά με κάτω παύλες _). Ο γενικός τρόπος είναι να χρησιμοποιήσεις την find.
Spoiler: show
Γνώσεις → Linux: Μέτριος ┃ Προγραμματισμός: Μέτριος ┃ Αγγλικά: Μέτριος
Λειτουργικό → Ubuntu 11.04 natty 64-bit (el_GR.UTF-8)
Προδιαγραφές → CPU: 4x Intel Core i5 CPU 750 2.67GHz ‖ RAM 3953 MiB ‖ ASRock P55DE3
Κάρτες γραφικών: nVidia G92 [GeForce GTS 250] ⎨10de:0615⎬ (rev a2)
Δίκτυα: eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller ⎨10ec:8168⎬ (rev 03)
Άβαταρ μέλους
lucinos
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 828
Εγγραφή: 12 Δεκ 2010, 22:04
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Reinach » 11 Νοέμ 2014, 20:32

lucinos έγραψε:ο φάκελος λέγεται "Αρχεία pdf"; δηλαδή έχει μέσα κενό; Ο απλός τρόπος είναι να αποφεύγεις τα κενά στα ονόματα αρχείων και φακέλων (άλλαξε τα κενά με κάτω παύλες _). Ο γενικός τρόπος είναι να χρησιμοποιήσεις την find.

Να σου πω, αυτό είναι δύσκολο έως αδύνατο τώρα. Είναι γενικό το ζήτημα στους φακέλους μου, τα κενά είναι παντού στα ονόματα. Το θέμα είναι ότι το συγκεκριμένο πρόβλημα δεν το έχω αντιμετωπίσει ποτέ. Και δεν μιλάω για μερικούς μήνες, μιλάω για αρκετά χρόνια. Κάτι άλλο πρέπει να κάνω.

Learner έγραψε:Μήπως έχεις πειράξει κάτι στο .bashrc που δημιουργεί αυτή την περίεργη συμπεριφορά ;


Ναι, το .bashrc είναι πειραγμένο για να έχω χρώμα στο prompt. Ίσως να είναι και λίγο (έως πολύ :problem: ) ανακατεμένο, δεν ξέρω. Αν μπορεί να το τσεκάρει κάποιος είναι εδώ:
Spoiler: show
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
# ... or force ignoredups and ignorespace
HISTCONTROL=ignoredups:ignorespace

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi

# ANSI color codes
RS="\[\033[0m\]" # reset
HC="\[\033[1m\]" # hicolor
UL="\[\033[4m\]" # underline
INV="\[\033[7m\]" # inverse background and foreground
FBLK="\[\033[30m\]" # foreground black
FRED="\[\033[31m\]" # foreground red
FGRN="\[\033[32m\]" # foreground green
FYEL="\[\033[33m\]" # foreground yellow
FBLE="\[\033[34m\]" # foreground blue
FMAG="\[\033[35m\]" # foreground magenta
FCYN="\[\033[36m\]" # foreground cyan
FWHT="\[\033[37m\]" # foreground white
BBLK="\[\033[40m\]" # background black
BRED="\[\033[41m\]" # background red
BGRN="\[\033[42m\]" # background green
BYEL="\[\033[43m\]" # background yellow
BBLE="\[\033[44m\]" # background blue
BMAG="\[\033[45m\]" # background magenta
BCYN="\[\033[46m\]" # background cyan
BWHT="\[\033[47m\]" # background white

if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'

alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;36m\]\u@\h\[\033[00m\]:\[\033[01;36m\]\w\[\033[00m\]\$ '
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 24.04 Noble Numbat 6.8.0-62-generic 64bit (el_GR.UTF-8, ubuntu:GNOME ubuntu)
3 Intel Core i5-1035G1 CPU @ 1.00GHz ‖ RAM 19549 MiB ‖ LENOVO LNVNB161216 - LENOVO 81WE
4 Intel Iris Plus Graphics G1 (Ice Lake) [8086:8a56] {i915}
5 wlp0s20f3: Intel Ice Lake-LP PCH CNVi WiFi [8086:34f0] (rev 30)
Άβαταρ μέλους
Reinach
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 702
Εγγραφή: 09 Νοέμ 2008, 20:48
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Learner » 12 Νοέμ 2014, 07:23

Αυτό σε τι ακριβώς εξυπηρετεί;
Κώδικας: Επιλογή όλων

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize


Τσέκαρε επίσης και το compatibility στο τερματικό. Αν υπάρχει επιλογή πάτα "Reset compatibility options to default" (από profile preferences → compatibility).
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Reinach » 12 Νοέμ 2014, 12:28

Learner έγραψε:Αυτό σε τι ακριβώς εξυπηρετεί;
Κώδικας: Επιλογή όλων

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize


Έλα ντε...πάντως συνειδητά δεν το έχω προσθέσει. Αυτό που πρόσθεσα είναι 1-2 γραμμές PS1 για τη μορφοποίηση του prompt. Να το σβήσω ε; Αν δεν υπάρχει και στο δικό σου...
Learner έγραψε:Τσέκαρε επίσης και το compatibility στο τερματικό. Αν υπάρχει επιλογή πάτα "Reset compatibility options to default" (από profile preferences → compatibility).

Την έκανα την επαναφορά αν και φαίνεται να ήταν ήδη στο default.
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 24.04 Noble Numbat 6.8.0-62-generic 64bit (el_GR.UTF-8, ubuntu:GNOME ubuntu)
3 Intel Core i5-1035G1 CPU @ 1.00GHz ‖ RAM 19549 MiB ‖ LENOVO LNVNB161216 - LENOVO 81WE
4 Intel Iris Plus Graphics G1 (Ice Lake) [8086:8a56] {i915}
5 wlp0s20f3: Intel Ice Lake-LP PCH CNVi WiFi [8086:34f0] (rev 30)
Άβαταρ μέλους
Reinach
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 702
Εγγραφή: 09 Νοέμ 2008, 20:48
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Learner » 12 Νοέμ 2014, 13:16

Reinach έγραψε:Έλα ντε...πάντως συνειδητά δεν το έχω προσθέσει. Αυτό που πρόσθεσα είναι 1-2 γραμμές PS1 για τη μορφοποίηση του prompt. Να το σβήσω ε; Αν δεν υπάρχει και στο δικό σου...

Υπάρχει οκ, απλά δεν το είχα προσέξει. Κάνει αυτό που γράφει παραπάνω σε σχόλιο και δεν νομίζω να επηρεάζει ή να δημιουργεί την συμπεριφορά που έχει το δικό σου τερματικό.

Για κάνε comment την τελευταία γραμμή PS1 που έχεις προσθέσει εσύ. Άσε την default δηλαδή.
About Me
NickTux@GitHub

Spoiler: show
1. Ubuntu 18.04 LTS
2. Intel Core i3 CPU M 380 2.53GHz ‖ RAM 6GB ‖ Acer Aspire 5733
3. Intel Integrated Graphics [8086:0046] {i915}
4. wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01)
Άβαταρ μέλους
Learner
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 9766
Εγγραφή: 08 Νοέμ 2010, 21:24
Τοποθεσία: Αθήνα
Launchpad: nicktux
IRC: NickTux
Εκτύπωση

Re: Αντιγραφή αρχείων από το τερματικό

Δημοσίευσηαπό Reinach » 12 Νοέμ 2014, 13:42

Learner έγραψε:Για κάνε comment την τελευταία γραμμή PS1 που έχεις προσθέσει εσύ. Άσε την default δηλαδή.


Μόλις το έκανα και όλα ΟΚ. Thanks! :clap: Με τις πιο πάνω εντολές έγινε μια χαρά η αντιγραφή στους δύο φακέλους. Άψογα. Κάτι άλλο μια που είσαι εδώ: θέλω το prompt μου έντονο μπλε όταν είμαι στο τερματικό ως user και έντονο κόκκινο όταν ανοίγω ως super user. Όσο και να διάβασα οδηγούς δεν κατάφερα να κάνω κάτι, είναι για μένα δυσνόητες οι παράμετροι.

Edit: ψάχνω για να πατήσω το πράσινο τικ στην 1η απάντησή σου και δεν εμφανίζεται σε καμία από τις απαντήσεις. Και σε κανέναν browser: δοκιμάζω με Midori, Arora και Firefox. Έγινε κάποια αλλαγή και δεν κατάλαβα;
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 24.04 Noble Numbat 6.8.0-62-generic 64bit (el_GR.UTF-8, ubuntu:GNOME ubuntu)
3 Intel Core i5-1035G1 CPU @ 1.00GHz ‖ RAM 19549 MiB ‖ LENOVO LNVNB161216 - LENOVO 81WE
4 Intel Iris Plus Graphics G1 (Ice Lake) [8086:8a56] {i915}
5 wlp0s20f3: Intel Ice Lake-LP PCH CNVi WiFi [8086:34f0] (rev 30)
Άβαταρ μέλους
Reinach
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 702
Εγγραφή: 09 Νοέμ 2008, 20:48
Εκτύπωση

Επόμενο

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι