Когда код выглядит так:
class Foo {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
, вам нужно запустить java Foo в каталоге, содержащем Foo.class (после компиляции с javac Foo.java). Если вы находитесь в другом каталоге, скажите ~, где файл класса находится в ~/bar/Foo.class, вам нужно установить путь к классу перед запуском java:
CLASSPATH=~/bar java Foo
Если вы используете пакеты , например:
package bar;
class Foo {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
, тогда вам нужно сохранить его на path/bar/Foo.java и скомпилировать path/bar/Foo.class с помощью javac path/bar/Foo.java и запустить с path/:
java bar.Foo
Это поведение по умолчанию cp. Итак, все, что вам нужно сделать, это регулярная рекурсивная cp:
cp -r Folder-A/* Folder-B/
Чтобы продемонстрировать:
$ tree
.
├── Folder-A
│ ├── File-1
│ ├── File-2
│ ├── File-4
│ ├── Folder-A-1
│ │ ├── File-5
│ │ └── File-6
│ └── Folder-A-2
│ └── File-7
└── Folder-B
├── File-1
├── File-2
├── File-3
└── Folder-A-1
└── File-5
$ cp -r Folder-A/* Folder-B
$ tree
.
├── Folder-A
│ ├── File-1
│ ├── File-2
│ ├── File-4
│ ├── Folder-A-1
│ │ ├── File-5
│ │ └── File-6
│ └── Folder-A-2
│ └── File-7
└── Folder-B
├── File-1
├── File-2
├── File-3
├── File-4
├── Folder-A-1
│ ├── File-5
│ └── File-6
└── Folder-A-2
└── File-7
Это поведение по умолчанию cp. Итак, все, что вам нужно сделать, это регулярная рекурсивная cp:
cp -r Folder-A/* Folder-B/
Чтобы продемонстрировать:
$ tree
.
├── Folder-A
│ ├── File-1
│ ├── File-2
│ ├── File-4
│ ├── Folder-A-1
│ │ ├── File-5
│ │ └── File-6
│ └── Folder-A-2
│ └── File-7
└── Folder-B
├── File-1
├── File-2
├── File-3
└── Folder-A-1
└── File-5
$ cp -r Folder-A/* Folder-B
$ tree
.
├── Folder-A
│ ├── File-1
│ ├── File-2
│ ├── File-4
│ ├── Folder-A-1
│ │ ├── File-5
│ │ └── File-6
│ └── Folder-A-2
│ └── File-7
└── Folder-B
├── File-1
├── File-2
├── File-3
├── File-4
├── Folder-A-1
│ ├── File-5
│ └── File-6
└── Folder-A-2
└── File-7